public interface IMovable
{
void Move();
}
public interface IUnloadable
{
void Unload();
}
public class Vehicle : IMovable
{
public void Move()
{
Console.Write("moving");
}
}
public class Truck : IMovable, IUnloadable
{
private Vehicle Veh;
public Truck(Vehicle veh)
{
this.Veh = veh;
}
public void Move()
{
Veh.Move();
Console.Write("reverse with beepy noise as well");
}
public void Unload()
{
Console.Write("Unload");
}
}
如果這是裝飾者模式。裝飾者模式和構圖之間有什麼區別?我已經看到了使用繼承的這種模式的例子。例如維基百科上的Java示例。C#中沒有繼承的裝飾模式。它是否正確?
我沒有看到需要繼承,或者我錯過了什麼?
'裝飾者模式和組成?'從概念上講,裝飾器修改它所包裝的(單個)對象的行爲,而複合(模式)具有基於它聚合的(多個)對象的組合的行爲。 – Fuhrmanator