首先 接口是一个特殊的抽象类 既然是类就会创建对象
接口是为了实现多态
接口是为了实现多态。
接口是为了实现多态。
接口回调:
interface People{ void peopleList(); } class Student implements People{ public void peopleList(){ System.out.println("I’m a student."); } } class Teacher implements People{ public void peopleList(){ System.out.println("I’m a teacher."); } } public class Example{ public static void main(String args[]){ People a; //声明接口变量 a=new Student(); //实例化,接口变量中存放对象的引用 a.peopleList(); //接口回调 a=new Teacher(); //实例化,接口变量中存放对象的引用 a.peopleList(); //接口回调 } } 结果: I’m a student. I’m a teacher. 例子参考:https://zhidao.baidu.com/question/1923748969384870227.html
-
情况1:子类有该同名函数,父类没有,会报错
-
情况2:子类没有该同名函数,父类有该函数,会按照父类的函数执行。
-
情况3:子类和父类都有该同名函数,会按照子类的函数情况来。
自己把这篇文章归纳总结如下:
定义一个animal抽象类, 里面有两个方法。
接下里定义两个类(cat和dog)去继承animal,
cat和dog分别重写了animal中的方法。
我们在调用dog里面的方法之后,
想修改为调用cat的方法。 ----
只需要将Animal animal=new Dog()改成Animal
animal=new Catl(), 只改变了一个对象。
接着继续调用animal.sing(),animal.run()。
实际的开发过程中要维护大量的代码量,
如果要换一个对象,改的代码更少。