1 static
1.1 概念
是java中的一个关键字
用于修饰成员(成员变量和成员方法)
1.2 特点
1.可以修饰成员变量与成员方法
2.随着类的加载而加载,优先于对象加载
3.只加载一次,就会一直存在,不再开辟新空间,直到类消失才一起消失
4.静态资源也叫做类资源,全局唯一,被全局所有对象共享
5.可以直接被类名调用
6.静态只能调用静态,非静态可以随意调用
7.static不能和this或者super共享,因为有static时可能还没有对象
2 静态代码块. 构造代码块. 局部代码块
2.1 静态代码块构式
static{}
静态资源随着类的加载而加载,并且只被加载一次,一般用于项目的初始化
特点: 被static修饰,位置在类里方法外
2.2 三种代码块的比较
1.静态代码块: 在类加载时就加载,并且只被加载一次,一般用于项目的初始化
2.构造代码块:在创建对象时会自动调用,每次创建对象都会被调用,提取构造共性
3.局部代码块: 方法里的代码块,限制局部变量的范围
执行顺序:静态代码块--->构造代码块--->构造方法--->局部代码块
3 final
3.1 概念
1.是java提供的一个关键字
2.final是最终的意思
3.final可以修饰类,方法,字段(属性)
初衷: java出现继承后,子类可以更改父类的功能,当父类功能不许子类改变时,可以利用final关键字修饰父类
3.2 特点
1. 被final修饰的类,不能被继承
2.被final修饰的方法,不能被重写
3.被final修饰的字段是个常量,值不能被修改
4.常量的定义形势: final 数据类型 常量名=值