C♯相談室 Part2
■ このスレッドは過去ログ倉庫に格納されています
0230デフォルトの名無しさん
NGNGnewとoverride/virtualは機能が違う。↓実行してみて。
using System;
class Base {
internal virtual string CallMe() {
return "Base";
}
}
class DerivedOverride : Base {
internal override string CallMe() {
return "Override";
}
}
class DerivedNew : Base {
internal new string CallMe() {
return "New";
}
}
class c {
static void Main() {
DerivedOverride over = new DerivedOverride();
Console.WriteLine(over.CallMe());
DerivedNew dnew = new DerivedNew();
Console.WriteLine(dnew.CallMe());
Base b1 = over;
Console.WriteLine(b1.CallMe());
Base b52 = dnew;
Console.WriteLine(b52.CallMe());
}
}
■ このスレッドは過去ログ倉庫に格納されています