问题:什么是接口,作用是什么
问题:什么是抽象类,作用是什么
一、抽象类
1、当父类的一些方法不确定时,
2、当一个子类继承的父类是抽象类的话,需要我们把抽象类中所有的抽象方法全部实现
3、抽象方法本身没有方法体,一般在子类中实现
4、抽象类只能作为父类,不能实例化,抽象类可以有普通实现方法
5、抽象类可以没有抽象(abstact)方法,仍然不可以实例化
6、一旦包含了abstract方法,则这个类必须声明为abstract类
注意:声明抽象方法时有几个限制
1、构造方法不能声明为abstract
2、静态方法不能声明为abstract
3、private方法不能声明为abstract
4、final方法不能声明为abstract
5、抽象方法只能出现在抽象类或接口中
二、接口
1、接口不能被实例化
2、接口中所有方法(包括普通方法)都不能有主体
3、一个类可以实现多个接口
4、一个重要原则:当一个类实现一个接口,要求该类把接口的所有方法都实现
5、接口中可以有变量,但变量不能为private,protected修饰,默认为public,final,static类型
6、在java开发中,经常把常用的变量,定义在接口中,作为全局变量使用,访问形式:接口名.变量名
7、一个接口不能继承其它的类,但可以继承别的接口
三、final
1、当不希望父类的某个方法被子类覆盖时,使用final修饰
2、当一个类不希望被继承时,使用final修饰
3、如果一个变量是final型,则必须赋予初值
4、final修饰的变量又称为常量
注意:使用最终方法时,最终方法可以出现在任何类中,但不能和abstract修饰符同时使用;最终方法不能被覆盖,但是可以被重载