抽象类抽象方法和接口

Java中的抽象类,抽象方法和接口

抽象类

使用了关键词abstract声明的类叫作“抽象类”。如果一个类里包含了一个或多个抽象方法,类就必须指定成abstract(抽象)。抽象类是用来捕捉子类的通用特性的。
定义格式

abstract class 类名 {}

抽象方法

属于一种不完整的方法,只含有一个声明,没有方法主体。
格式

public abstract void eat();

特点

1.抽象类无法直接实例化
2.抽象类中可以有抽象方法也可以有非抽象方法,但抽象方法只能在抽象类中
3.抽象类中存在构造方法,用于子类访问父类数据时的初始化
4.抽象类中也可以有成员变量,常量
5.抽象类的子类要么也是抽象类,要么就把其中的抽象方法全部重写
6.抽象方法具有强制性,要求子类必须重写,非抽象方法不具有强制性

接口

接口是抽象方法的集合,用关键字interface定义
格式

interface 接口名 {}

接口和类是平级的,类可以通过关键字implements实现接口,如果一个类实现了某个接口,那么它就继承了这个接口的抽象方法
格式

class 类名 implements 接口名 {}

接口特点

1.接口无法直接实例化,若想实例化,可以按照多态的方式实例化
2.接口中只能定义抽象方法,不能定义非抽象方法
3.接口中没有构造方法
4.接口中的方法前面有默认修饰符 public abstract但是建议自己写上
5.接口中全是静态常量,没有成员变量这一说,因为在前面有默认的public static final

类与接口与类的关系

1.类与类之间的关系:继承关系 ,单继承,支持多层继承 ; 关键字:extend
2.类与接口之间的关系:类实现接口 ,支持单实现,也支持多实现;关键字:implement**
3.接口与接口之间的关系:继承关系 支持多继承
另外,一个类在继承其他类的同时也可以实现接口

猜你喜欢

转载自blog.csdn.net/rtx_2080/article/details/85078375