abstract
抽象类
应用:abstract修饰类,此类不能new对象。
被abstract修饰的类,称为抽象类
抽象类意为不够完整的类、不够具体的类,
抽象类对象无法独立存在,即不能new对象。
抽象类的作用
作用:
- 可被子类继承,提供共性属性和方法。
- 可声明为引用,更自然的使用多态。
抽象方法
特点:
抽象的方法不能有方法体
抽象方法只能出现在抽象类中
子类继承父类重写父类的抽象方法
作用:
方法不想写实现
强制子类重写
static 静态
可以修饰成员属性、成员方法、代码块、内部类
静态成员属性:
使用:可以通过类名.属性名进行访问和使用(当类加载的是就加载出来了)
特点:
1、静态变量在对象间是共享的
静态方法
1.静态的方法只能访问静态的成员
2.非静态的方法 可以访问静态的成员 static a -> static aa() ->b ->bb()
3.静态方法中不能使用this super 关键字
4.静态成员可以被继承 但是不能被重写
5. abstract和 static不能同时出现
应用:
工具类
静态代码块
{
代码 创建对象 在调用构造方法前被执行
}
static{
静态代码块 在非静态代码块和调用构造方法前被执行 只执行一次
}
静态代码块只执行一次
final
fianl修饰变量
final 修饰的变量为常量,要手动初始化
常量赋值的节点:
非静态常量:final a=10;
可以直接赋值
可以在构造方法中
可以在非静态代码块中
静态常量:final static a=10;
直接赋值
静态代码块
基本数据类型的常量,值不能变化;
引用数据类型的常量,地址不能发生变化
final修饰类
最终的类,不能被继承
final修饰方法
最终的方法,不能被重写