关键字就是被Java语言赋予了特殊含义的单词
static作用:
1. 修饰属性
static关键字修饰的属性改为静态属性,与类相关,与类的实例无关,一个类的不同实例共享一个静态属性,访问方式为类.属性
2. 修饰方法
被static修饰的方法称为静态方法,不能被重写
- 静态方法与类相关,与类的实例无关
- 可以直接调用静态方法,无需创建具体实例,类.方法
- 静态方法可以访问静态数据,并可以更改静态数据,静态方法不能访问非静态数据成员,更无法修改非静态数据成员的值,静态方法不能调用非静态方法
3. 修饰代码块
用于初始化静态成员属性
4. 修饰类(修饰类只能是内部类,普通类不能用static关键字修饰)
final作用
- final修饰的变量在程序运行过程中不能被修改(常量)
- final修饰的类不能被继承,类中的方法默认也是final的,不能被重写
- final修饰的方法不能被重写,能被重载,父类不允许子类重写父类中被final关键字修饰的方法
- final修饰的对象的引用不能改变,但是对象的值可以被改变
- final不能用来修饰抽象类和接口,因为抽象类的目的就是继承