Initial Commit (w/ Ch1Duck first implementation)

This commit is contained in:
2025-10-30 14:46:26 +01:00
commit 695fb26ce4
11 changed files with 129 additions and 0 deletions

19
Ch1Duck/Duck.cs Normal file
View 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");
}
}