Java基础笔记 - 抽象类与接口

1、抽象类(abstract class):

抽象类使用abstract关键字修饰。抽象类无法实例化,即不能用new关键字创建一个抽象类的对象。

1.1、抽象方法:

抽象方法使用abstract关键修饰。抽象方法需要定义在抽象类中。抽象方法有别于具体方法,是一种有声明无实现的方法。

1.2、抽象方法与抽象类的关系:

包含抽象方法的类一定是抽象类,此时该类一定要声明成abstract class。如果一个类是抽象类,那么该类即可以包含抽象方法,也可以包含具体方法。

1.3、抽象类的继承:

如果在子类继承一个抽象类的情况下,该子类必须要实现父类中所定义的所有抽象方法;否则,该子类必须声明成一个abstract class。

2、接口(interface):

可以认为接口是一个特殊的抽象类。接口的地位等同于class。接口中的所有方法都是抽象方法。

2.1、声明接口中的方法:

在声明接口中的方法时,可以使用abstract关键字,也可以不使用。因为在接口中默认就为abstract的方法。

接口中所声明的方法都是抽象方法。接口中的方法都是public的。

接口中也可以定义成员变量,定义的成员变量是public final static的。

一个类不能同时使用final和abstract关键字。

2.2、实现一个接口:

一个类实现了某个接口,那么该类必须要实现接口中声明的所有方法。如果 该类是一个抽象类,就无需实现接口中的方法。

arthinking wechat
欢迎关注itzhai公众号