抽象类
抽象类的概念:
Java中可以定义没有方法体的方法,该方法的具体实现由子类完成,该方法称为抽象方法,包含抽象方法的类就是抽象类。如:Shape类计算周长和面积的方法无法确定,那么就可以将这样的方法声明为抽象的,以便在具体的子类中进行实现。
抽象类的声明: [修饰符] abstract class 类名 [extends 父类名]{类体}
抽象方法的声明: [修饰符] abstract 返回值类型 方法名([参数列表]);
因为抽象方法无法确定具体执行的功能,所有抽象方法没有方法体,需要在小括号后加上分号
抽象类和普通类除了使用abstract修饰外和普通的类相似,抽象类中可以没有抽象方法,但是一旦某个有抽象方法,那么这个类必须被声明为抽象类。
抽象类的使用:
因为抽象类不是一个具体的类,所以无法实例化,但是抽象类可以用于声明变量
抽象类可以被继承,在子类中实现抽象类的所有抽象方法,以达到抽象类的具体化
接口
1.什么是接口:
① 硬件接口:是指同一计算机不同功能层之间的通信规则称为接口。
② 软件接口:是指对协定进行定义的引用类型。其他类型实现接口,以保证它们支持某些操作。
2.Java中的接口:在JAVA编程语言中是接口一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。
特点:
① 接口中没有构造器,不能被实例化
② 接口只能继承接口,不能继承类,接口支持多继承
③ 接口中的定义的成员变量,默认是public static final修饰的静态常量
④ 接口中定义的方法,默认是public abstract修饰的抽象方法
⑤ 接口中定义的内部类,默认是public static修饰的静态内部类
标志接口:仅仅作为一个定义,就是一个标志
常量接口:用来封装多个常量信息