-
JAVA进修之:抽象类与接口
添加时间:2013-6-19 点击量:抽象类与接口
抽象类(abstract class)
抽象类是一种特别的类,它具有如下特点:
1抽象办法只出声明,不包含实现;
2抽象类不克不及被实例化;
4抽象类可以有但不是必须有抽象办法,然则一旦有了抽象办法,就必然要把这个类声明为抽象类;
5除抽象办法外,抽象类还可以包含具体的办法和数据;
6类即使不含有抽象办法,也可以将类声明为抽象类。
接口(interface)
接口首要用来描述类具有什么功能,而不给出具体实现。
在Java中,接口不是类,而是对类的一组需求描述,这些类(实现接口)要遵从接口描述的同一格局进行定义。
接口类似抽象类又不合于抽象类
1不克不及被实例化;
2只能包含办法声明,不克不及有办法的实现;
3接口中所有办法默认为public。重视:不克不及将接口的办法声明为private;
4在接口中可以定义常量,与接口中办法默认为public一样,接口中的常量默认为public static final;
5一个类可以实现多个接口,一个接口也可以实现其它多个接口;
6实现接口的类,必须实现该接口(及其父接口)的所有办法。
抽象类与接口的共同点
1都不克不及被实例化;
2都可以被持续;
3都可以包含办法声明;
4派生类必须实现为未实现的办法。
抽象类与接口的不合点
1抽象类是一个不完全的类,须要进一步细化,而接口只是一个行动规范或规定;
2抽象类除定义办法声明外,还可以定义办法实现,而接口只能定义办法声明和常量;
3一个类只能持续一个抽象类,但可以实现多个接口。