C#.net设计一张抽象的门Door,这扇门拥有所有门的共性,
发布网友
发布时间:2022-04-27 09:38
我来回答
共2个回答
热心网友
时间:2022-04-27 11:07
abstract class Door
{
public abstract bool OpenDoor();
public abstract bool CloseDoor();
}
interface TheftProof
{
void Theft();
}
interface WaterProof
{
void Water();
}
interface BullerProof
{
void Bullet();
}
class TestDoor : Door, TheftProof, WaterProof, BullerProof
{
public override bool OpenDoor()
{
//开门的条件
return true;
}
public override bool CloseDoor()
{
//关门的条件
return true;
}
public void Theft()
{
//防盗的具体方法
}
public void Water()
{
//防水的具体方法
}
public void Bullet()
{
//防弹的具体方法
}
}
其他的功能如防火,防锈都可以设计为借口,然后在具体门类(本示例为TestDoor)继承接口,在内部实现接口的方法即可
热心网友
时间:2022-04-27 12:25
应该采用(设计模式-装饰模式)会好点,可以做到不想要的功能不要也包含在是实体中。
可以实现在一个门类的基础上,合成防盗--TheftProof()、防水--WaterProof()、防弹--BulletProof()、防火、防锈的一个或多个功能。