关键字:
-
interface(定义一个接口)
-
implements(使用一个接口)
笔者的理解:
Cat类和Dog类有一个共同的父类Animal,而Dog类应该有一个【捡球】的方法,但是Cat没有,而且也不是动物的共有属性,也不是Dog的特有属性,因为People类也有【捡球】的方法,这时就可以通过一个【捡球】接口,来让People和Dog都实现一个捡球的功能。
注意:
- 一个类只可以继承一个类(单继承),但一个类可以实现多个接口。(多继承)
- 接口内容只有常量和抽象方法
- 系统会自动让接口变成抽象类,让接口内的方法变成抽象方法,让接口内的变量变成常量。
语法示例:
//定义一个接口
//修饰符一般为public,不能用private和protected
<修饰符> interface <接口名> [extends 父接口1,父接口2...]{
//零个到多个常量的定义
//零个到多个抽象方法的定义
}
//使用一个接口
<修饰符> class <类名> extends <父类> implements <接口1>,<接口2>...{
//类体部分
//如果继承了抽象类,需要实现继承的抽象方法;要实现接口中的抽象方法。
}
通过匿名内部类也可以实现接口
视频链接:慕课Java-接口(包括接口和匿名内部类的讲解)