JavaSE篇之抽象类接口
1.抽象类
1.1抽象类概念
不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。
比如写 的shape和animal类。
注意事项:
1.使用abstract修饰类表示当前类是一个抽象类
2.抽象类当中可以定义和普通类一样的成员变量和成员方法
3.抽象类不能通过new关键字实例化对象
4.在抽象类当中可以包含抽象方法,被abstract修饰的,这个方法有一个特点,可以没有具体实现( 可以没有{}及里面的内容 )
5.如果当前类包含抽象方法,这个类必须是抽象类
6.如果一个类继承了一个抽象类,那么这个类必须重写抽象类当中所有的抽象方法。
2.接口
2.1接口的概念
在Java中,接口可以看成是:多个类的公共规范,是一种引用数据类型。
2.2注意事项
1.定义接口的关键字是interface
2.接口当中不能由构造方法,不能有普通方法的实现
3.接口中可以定义成员变量,但是成员变量默认为public static finial修饰,也就是静态常量
4.接口当中的方法如果要有具体的实现,可以把当前方法用static修饰(或者default修饰)
5.接口当中的抽象方法默认为public abstract修饰的
6.接口也不能被实例化
7.类和接口之间可以使用implements来关联
2.3语法规则
接口的定义格式与定义类的格式基本相同,将class换成interface就定义了一个接口。
public interface 接口名称{}
2.4接口使用
接口不能直接使用,甚至不能实例化,必须要有一个“实现类”来“实现”该接口,实现接口中的所有抽象方法
public class 类名称 implements 接口名称{}
子类和父类是extends继承关系,类和接口是implements实现关系。