Initial Commit (w/ Ch1Duck first implementation)
This commit is contained in:
19
Ch1Duck/Duck.cs
Normal file
19
Ch1Duck/Duck.cs
Normal file
@@ -0,0 +1,19 @@
|
||||
namespace Ch1Duck;
|
||||
|
||||
public abstract class Duck(IFlyBehaviour flyBehaviour, IQuackBehaviour quackBehaviour) {
|
||||
public abstract void Display();
|
||||
|
||||
public void PerformFly() {
|
||||
flyBehaviour.Fly();
|
||||
}
|
||||
|
||||
public void PerformQuack() {
|
||||
quackBehaviour.Quack();
|
||||
}
|
||||
}
|
||||
|
||||
public class MallardDuck() : Duck(new FlyWithWings(), new NormalQuack()) {
|
||||
public override void Display() {
|
||||
Console.WriteLine("I'm a real Mallard duck");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user