导包
import 包名.类名;
final
1.final修饰类 类不能被继承 class
2.final修饰方法 方法不能被重写
3.final修饰变量:变量有且只能被赋值一次
注意:
- final修饰的变量是基本类型:数据值不能变
- final修饰的变量是引用类型:变量存储的地址不能发生改变 但地址指向的对象内容是可以发生变化的
常量
- 常量是使用了public static final修饰的成员变量 必须有初始化值 且执行过程不能被改变
- 常量命名规范:英文单词全部大写 多个单词下划线连接
枚举
为了做信息的标志和信息的分类
- 枚举类的构造器是私有的 对外不能创建对象
- 第一行默认都是罗列枚举对象名称
- 枚举类相当于多例模式
抽象类
注意事项
- 类有的成员(成员方法、变量、构造器)抽象类都有
- 抽象类中可以没有抽象方法 但抽象方法的必须是抽象类
- 一个类继承了抽象类 必须重写完抽象类的全部抽象方法
- 抽象类不能创建对象
- final和abstract是什么关系?
互斥关系
抽象类的应用知识:模版方法模式
- 实现步骤
把功能定义成一个所谓的模版方法 放在抽象类
( 模版方法中只定义通用且能确定的代码) - 实现场景
模版方法中不能决定的功能定义成抽象方法让具体子类去实现
接口
接口是用来被类实现(implement)的 实现接口的类称为接口类
修饰符 class 实现类 implements 接口1,接口2...{
}
注意事项(了解)
1、接口不能创建对象
2、一个类实现多个接口,多个接口中有同样的静态方法不冲突。
3、一个类继承了父类,同时又实现了接口,父类中和接口中有同名方法,默认用父类的。
4、一个类实现了多个接口,多个接口中存在同名的默认方法,不冲突,这个类重写该方法即可。
5、一个接口继承多个接口,是没有问题的,如果多个接口中存在规范冲突则不能多继承。