抽象类和接口
抽象类:当父类的一些方法不能确定时,可以用abstract关键字来修饰该方法,这个方法就是抽象方法,用abstract来修饰该类就是抽象类
介绍:
1,用abstract关键字来修饰一个类时,这个类就叫抽象类
2,用abstract关键字来修饰一个方法时,这个方法就叫抽象方法
细节:
1,抽象类不能被实例化
2,抽象类不一定包含abstract方法,也就是说抽象类中可以没有abstract方法
3,一旦类中包含abstract方法,则这个类必须声明为abstract
4,abstract只能修饰类和方法,不能修饰属性和其他的
5,抽象类可以有任意成员【因为抽象类本质还是类】
6,抽象 方法不能有主体
7,如果一个类继承了抽象类,则它必须实现抽象类的所有抽象方法,除非它自己也声明为abstract类
8,抽象类不能被prvate,final和static来修饰,因为这些关键字和重写相违背
接口:接口就是给一些没有实现的方法,封装到一起,到某个类要使用时,再根据具体情况把这些方法写出来
语法:
interface 接口名{
属性
方法(1,抽象方法,默认实现方法(default),静态方法)
}
class 类名 implements 接口{
自己的属性
自己的方法
必须实现的接口方法
}
接口的注意和细节:
1,接口不能被实例化
2,接口中所有的方法是public方法,接口中抽象方法,可以不用abstract修饰
3,一个普通的类实现接口,就必须将该接口的所有方法都实现
4,抽象类实现接口,可以不用实现接口的方法
5,一个类可以同时实现多个接口
6,接口中的属性,只能是final的,而且是public static final 修饰符。
7,接口中属性的访问形式
接口的多态性:
1,接口的引用可以指向实现了接口的类的对象
2,多态数组:数组参数可以是实现接口的类的对象
3,接口的多态传递:A实现了接口B,接口B继承了接口C,A也就相当于实现了接口C

浙公网安备 33010602011771号