継承は、ファーストクラスの概念としてC#で可能である:
public class BaseClass
{
public virtual string Name { get { return "Adam"; } }
}
public class ChildClass : BaseClass
{
public override string Name { get { return "Foo"; } }
}
override
に何かあなたはvirtual
にする必要があり、private
以外のアクセシビリティが必要です。
あなたはおそらくのような何か行うことができ、あなたの例では
:私は正直だ場合、あなたの質問は非常に明確ではないが
class clsMain
{
public virtual int P1{set; get;}
public virtual int P2{set; get;}
public virtual int P3{set; get;}
public virtual string P4{set; get;}
public virtual string P5{set; get;}
}
class object1 : clsMain
{
public override int P1{set; get;}
public override int P2{set; get;}
public override int P3{set; get;}
}
class object2 : clsMain
{
public override int P3{set; get;}
public override string P4{set; get;}
public override string P5{set; get;}
}
を。ただし、C#は複数のクラスの継承をサポートしていないことに注意してください。
プロパティを除外したいと思うように聞こえます。継承されたメンバーがアクセスされるのを止めることはできません(よく、new
修飾子がありますが、これは最高のスケッチです)。代わりに、あなたはインターフェイスを使用することができます:
interface Iobject1
{
int P1 { set; get; }
int P2 { set; get; }
int P3 { set; get; }
}
interface Iobject2
{
int P3{set; get;}
string P4{set; get;}
string P5{set; get;}
}
class clsMain : Iobject1, Iobject2
{
public int P1{set; get;}
public int P2{set; get;}
public int P3{set; get;}
public string P4{set; get;}
public string P5{set; get;}
}
あなたはそのようなclaves havプロパティを排他的にしたいですか? – Tigran
Tigranの答えは、私に本当に良い見えます。 – Dhananjay