自己把这篇文章归纳总结如下:
定义一个animal抽象类, 里面有两个方法。
接下里定义两个类(cat和dog)去继承animal,
cat和dog分别重写了animal中的方法。
我们在调用dog里面的方法之后,
想修改为调用cat的方法。 ----
只需要将Animal animal=new Dog()改成Animal
animal=new Catl(), 只改变了一个对象。
接着继续调用animal.sing(),animal.run()。
实际的开发过程中要维护大量的代码量,
如果要换一个对象,改的代码更少。
比如cat和dog都有cry方法,如果不用接口的话,
Cat cat = new Cat();
cat.cry();
cat.smile();
cat.eat();
那么要改成Dog的话
那么这三行代码都要修改,这就大大加大的代码的修改量,
Dog dog = new Dog();
dog.cry();
dog.smile();
dog.eat();
如果用接口的话:
Animal animal = new Cat();
animal.cry();
animal.smile();}
animal.eat();
那么只要修改一行,把Cat改成Dog就行了,大大减少了代码的修改量,增加了代码的复用性。
Animal animal = new Dog();