根据传入的对象,动态决定调用谁的方法

    1. interface Animal{
    2. eat():void
    3. }
    4. class Cat implements Animal{
    5. eat(): void {
    6. console.log('鱼');
    7. }
    8. }
    9. class Dog implements Animal{
    10. eat(): void {
    11. console.log('骨头');
    12. }
    13. }
    14. class Farmer{
    15. feed(obj:Animal){
    16. obj.eat();
    17. }
    18. }
    19. var f:Farmer =new Farmer();
    20. f.feed(new Cat())
    21. f.feed(new Dog())