「DisplayTitle」というメソッドを実装する「Parent」という抽象的な親クラスがあるとします。このメソッドを「Parent」を継承する各サブクラスで同じにしたい-サブクラスが独自の「DisplayTitle」メソッドを実装しようとすると、コンパイルエラーが発生します。どうすればC#でこれを達成できますか。私はJavaを信じており、メソッドを「final」としてマークするだけですが、C#で代替手段を見つけることができないようです。「封印」と「オーバーライド」をいじっていますが、探している動作が得られません。
たとえば、次のコードでは次のようになります。
using System;
namespace ConsoleApplication1
{
class Parent
{
public void DisplayTitle() { Console.WriteLine("Parent's Title"); }
}
class ChildSubclass : Parent
{
public void DisplayTitle() { Console.WriteLine("Child's Own Implementation of Title");
}
static void Main(string[] args)
{
ChildSubclass myChild = new ChildSubclass();
myChild.DisplayTitle();
Console.ReadLine();
}
}
}
「ChildSubClass」は「DisplayTitle」をオーバーライドできないというコンパイルエラーを受け取りたいのですが。現在、警告が表示されますが、これは実行できるはずのことであり、メソッドにラベルを付けるための適切な属性がわかりません。