1、抽象类:
抽象:abstract
格式:修饰符 abstract 返回值类型 函数名(参数列表);
抽象类不能被实例化,作用将来被继承
一个抽象类一旦被继承,子类就必须实现所以方法
抽象类是类的模版(类是对象实例的模版)
抽象类无构造方法
抽象就是从多个事物中将共性的,本质的内容抽取出来。
抽象类和抽象方法 必须用abstract关键字来修饰。
抽象方法只有方法声明,没有方法体,定义在抽象类中。
如果这个类里面的方法有一个是抽象的,那么这个类必须是抽象的。
抽象类中的方法,子类必须实现。
抽象类中可以有变量,可以有方法体的方法。
抽象类可以有构造函数,抽象关键字abstract不可以和final共存,抽象方法不能是private
抽象类中可以设有抽象方法,目的就是不让该类创建对象,AWT的适配器就是这种类
2、接口:
接口:interface
格式:interface{}
接口:本质是标准
接口是对外暴露ude规则
接口是程序的功能扩展
接口可以用来多实现
类与接口之间是实现关系,而类可以继承一个类的同时实现的接口
接口与接口之间可以有继承关系。 多继承
类可以同时继承抽象和接口
接口中方法都默认是public 的,不能有方法体。
接口中的变量都常量,都是public static final 的,必须先赋值。
如果一个类实现了此接口,必须覆盖接口中的所有抽象方法。
implement 实现
Java中只能单继承,但是可以多实现接口
如果可以写成抽象类,又可以写成接口,坚决写成接口,(接口比较灵活,可以多实现)