1.接口
1.1java中定义接口格式
格式:
interface 接口名 {
成员变量
成员方法
}
要求:
1. 接口名要求符合命名规范,大驼峰命名法,见名知意
2. 成员变量【缺省属性】 public static final 定义时必须初始化
3. 成员方法【缺省属性】 public abstract 方法没有方法体
1.2java中类实现接口
关键字:
implements
格式:
class A implements B {
}
A类是B接口的实现类
A类遵从B接口
一个类可以实现多个接口,使用英文逗号隔开class F implements C, D, E{}
接口可以继承接口,用extends,interface ISon extends IFather{}
1.3abstract类遵从接口
abstract修饰的方法
1. 没有方法体
2. 必须定义在abstract修饰的类内,或者interface接口内
abstract修饰的类遵从接口,不强制完成接口中缺省属性为abstract修饰的方法
一般会选择性完成一些统一功能方法,简化后期代码的压力
1.4 JDK1.8新特征 default关键字
JDK1.8 更新特征
default关键字可以在接口中使用,用于修饰方法,使用default关键字修饰的方法在接口中是允许有方法体的
【默认方法】【非强制重写方法】
2.多态
1. 父类的引用指向子类的对象
2. 或者接口的引用指向遵从接口的类对象
1. 一个方法需要的参数是父类,传入实际参数是父类对象本身,或者其子类对象都是OK的!
2. 一个方法返回值类型是父类,实际返回的数据时父类对象本身,或者其子类对象也是OK的!
3. 引用数据类型之间的强制类型转换时允许使用,但是要求明确真实数据类型是一致的,不然会导致异常出现ClassCastException