私は解決できない奇妙な問題があります。私は、次の切り取らをコンパイルしようとすると、私はこのエラーを取得:c#抽象基本クラスのプロパティ
「AbstractClass」インターフェイスメンバ「プロパティ」(コンパイラエラーCS0535)を実装していない
オンラインヘルプには、私のAbstractClassが抽象作るために私に語った、それです。誰が私がどこに間違って行ったか教えていただけますか?
乾杯リュディガー
public interface IBase {
string Property { get; }
}
public abstract class AbstractClass : IBase
{
public override string ToString()
{
return "I am abstract";
}
}
public class ConcreteClass : AbstractClass
{
string Property {
get {
return "I am Concrete";
}
}
}
ありがとう、それは明らかにそれを解決します。なぜ私は、インターフェイスが抽象クラスで処理される通常の方法で中断しているように思うのだろうかと疑問に思っています。 –
どういう意味ですか?抽象クラスのサブクラスは、IBaseを実装していることを必ずしも知る必要はありません。実装する必要のある仮想メンバーと抽象メンバーだけを参照する必要があります。 – dahlbyk
また、 'override'修飾子を使って' ConcreteClass'に 'Property'を宣言する必要があります。 – LukeH