这是隐藏的方法:
class SuperClass : GLib.Object {
public void method1() {
stdout.printf("SuperClass.method1()\n");
}
}
class SubClass : SuperClass {
public new void method1() {
base.method1();
stdout.printf("SubClass.method1()\n");
}
}
没有“new”关键字的相同代码:
class SuperClass : GLib.Object {
public void method1() {
stdout.printf("SuperClass.method1()\n");
}
}
class SubClass : SuperClass {
public void method1() {
base.method1();
stdout.printf("SubClass.method1()\n");
}
}
这些有什么区别?
编辑:在生成的 C 代码中绝对没有区别,所以我认为编译的二进制文件是相同的。