C++ 与 Java 中的默认虚拟行为
在C++中,方法默认是非虚拟的。可以通过使用virtual关键字使它们成为虚函数。
示例代码
#include输出结果using namespace std; class B { public: void s() //默认为非虚拟。在函数前使用virtual打印“InDerived”{ cout<<" In Base \n"; } }; class D: public B { public: void s() { cout<<"In Derived \n"; } }; int main(void) { D d; //D类对象 B &b = d; b.s(); return 0; }
In Base.
在Java中,方法默认是虚拟的。可以通过使用final关键字使它们成为非虚拟功能。
示例代码
class B {
public void s() {
System.out.println("In Base"); //默认虚拟
}
}
class D extends B {
public void s() {
System.out.println(" In Derived");
}
}
public class Main {
public static void main(String[] args) {
B b = new D();
b.show();
}
}输出结果In Base.
热门推荐
4 哈尼族祝福语简短
10 优美的春节祝福语简短
11 酒仙网红包祝福语简短
12 伴郎红包祝福语朋友简短
13 结婚祝福语简短最好的
14 分手的祝福语女生简短
15 新婚祝福语英语简短精辟
16 班级祝福语简短句子
17 写给宝宝新年祝福语简短
18 感恩跨年祝福语大全简短