Inheritance 继承:方法
给定以下代码:Inheritance 继承:方法,inheritance,Inheritance,给定以下代码: class BaseClass { protected void Do(var param) {}; } class DerivedClass { public void DoSomething() { var param = something; Do(param); } } 这是使用继承的正确方法吗?我想我会把“Do”方法放在一个单独的类中,并使用composition。但是,这将违反封装,因为我必须
class BaseClass
{
protected void Do(var param) {};
}
class DerivedClass
{
public void DoSomething()
{
var param = something;
Do(param);
}
}
这是使用继承的正确方法吗?我想我会把“Do”方法放在一个单独的类中,并使用composition。但是,这将违反封装,因为我必须访问基类中的对象:
class DerivedClass
{
public void DoSomething()
{
var param = something;
base.GetObject().Do(param);
}
}
是的,如果好的话就那样
这里的合成可能不会破坏封装,但这似乎是一个可以接受的非真实性用法