1. 根据传入的对象动态决定调用谁的方法
    1. interface Animal1{
    2. eat():void
    3. }
    4. class Cat implements Animal1{
    5. eat():void{
    6. console.log("鱼");
    7. }
    8. }
    9. class Dog implements Animal1{
    10. eat():void{
    11. console.log("狗粮")
    12. }
    13. }
    14. class Farmer{
    15. feed(obj:Animal1){
    16. obj.eat();
    17. }
    18. }
    19. var f:Farmer = new Farmer()
    20. f.feed(new Cat())
    21. f.feed(new Dog())