您的位置:首页 > 编程语言 > Java开发

java类 ,抽象类‘,接口三者之间的联系与包含

2017-09-27 16:03 295 查看
java**类**:有正常的方法等,可以直接调用。

抽象类:无法直接使用,需要被子类继承后才能使用,一个java类只能继承一个抽象类。抽象类中的抽象方法必须定义为protected或者public,因为如果我们将其定义为私有的话,就无法被子类继承(其实也不是不好继承,而是不好调用)

[public] abstract class MyClass{
abstract int fun();
}


抽象类中的抽象方法没有具体实现的方法

接口:无法直接使用,需被java类实现后才能使用,一个java类可以实现多个接口。

接口中可以有变量和方法,但是接口中的变量是被强制置为public static final 的,并且只能为该类型。

[public] interface InterfaceName {

}//这是一个空的接口


一个类只能继承一个抽象类,但是一个类可以实现多个接口



继承与实现的区别:

extends,表示对父类的继承,可以实现父类,也可以调用父类初始化 this.parent()。而且会覆盖父类定义的变量或者函数。

implements,表示对接口的实现,接口通过关键字interface 进行定义。eg:public class S implements F,在接口F中对方法进行声明,在类S中对该方法进行实现。

这两种实现的具体使用,是要看项目的实际情况,需要实现,不可以修改implements,只定义接口。需要具体实现,或者可以被修改扩展性好,用extends。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java