取景
BaseA -> SubB -> SubSubC
说明:SubSubC 类继承了 SubB 类。SubB 类继承 BaseA 类
BaseA -> SubD -> SubSubE
说明:SubSubE 类继承 SubD 类。SubB 类继承 BaseA 类
很快..
因此,有许多类的祖父类为 BaseA 。BaseA 类具有所有方法共有的一些属性。例如:CustomerID、LastLogin、UniqueName 等。
这就是我正在使用的服务中类的设计方式。
我的疑问是在调用服务方法时,所有方法都需要任何 SubSub 类的参数。谁能告诉我,有什么办法可以在一个地方为 BaseA 的属性赋值,这样在创建 SubSub 对象时我就不需要每次都填充基本属性?
我使用 C# 作为我的语言。
代码:
public class BaseA
{
public int CustomerId { get; set; }
public string UniqueName { get; set; }
}
public class SubB : BaseA
{
}
public class SubSubC : SubB
{
}
public class SubD : BaseA
{
}
public class SubSubE : SubD
{
}
public class MyMain
{
public void SendRequestToService1()
{
(new MyServiceObject()).ServiceMethod1(new SubSubC());
}
public void SendRequestToService2()
{
(new MyServiceObject()).ServiceMethod2(new SubSubE());
}
}
在上面的代码中,在 SendRequestToService1 和 SendRequestToService2 中,我需要初始化基类属性 CustomerId 和 UniqueName。前任:
(new SubSubC(){ CustomerId=2, UniqueName="XXBB" });
如果有很多方法,我需要每次为它们各自的类初始化这些属性。有没有一种方法可以在一个地方初始化基本属性 CustomerId 和 UniqueName,以便继承类(此处为 SubSubC,SubSubE)在创建对象时无需初始化?