Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

Default Virtual Behavior แตกต่างกันอย่างไรระหว่าง C++ และ Java

ใน C++ เมธอดสมาชิกของคลาสเป็น non-virtual โดยค่าเริ่มต้น สามารถทำให้เป็น virtual ได้โดยระบุคีย์เวิร์ด

แต่ใน Java เมธอดเป็น virtual โดยค่าเริ่มต้น และสามารถทำให้เป็น non-virtual ได้ด้วยคีย์เวิร์ด final

ตัวอย่าง

class base_class{ 
    public void display_msg(){ 
        System.out.println("The display_msg method of base class class"); 
    } 
} 
class derived_class extends base_class{ 
    public void display_msg(){ 
        System.out.println("The display_msg of derived class called"); 
    } 
} 
public class Main{ 
    public static void main(String[] args){ 
        base_class my_instance = new base_class(); 
        my_instance.display_msg(); 
    } 
}

ผลลัพธ์

The display_msg method of base class class

คลาส base_class มีฟังก์ชัน display_msg derived_class 繼承 base_class และมี display_msg ของตัวเอง ใน Main สร้างอินสแตนซ์ base_class เรียก display_msg แสดงผล