根据传入的对象动态决定调用谁的方法
interface Animal1{eat():void}class Cat implements Animal1{eat():void{console.log("鱼");}}class Dog implements Animal1{eat():void{console.log("狗粮")}}class Farmer{feed(obj:Animal1){obj.eat();}}var f:Farmer = new Farmer()f.feed(new Cat())f.feed(new Dog())
