static跟final
时间: 2023-08-18 11:07:43 浏览: 45
`static`和`final`都是Java中的关键字,但它们的作用不同。
`static`用于修饰类成员,包括变量和方法,表示该成员不属于任何实例对象,而是属于整个类,可以使用类名直接访问。同时,`static`修饰的成员只会在内存中存在一份,被所有实例对象共享。
而`final`用于修饰变量、方法和类,表示它们的值或者实现不能被修改。如果一个变量被`final`修饰,它只能被赋值一次,而且一旦赋值了,就不能再次改变。如果一个方法被`final`修饰,它就不能被子类重写。如果一个类被`final`修饰,它就不能被继承。
总的来说,`static`表示静态的,`final`表示不可变的。
相关问题
static和final区别
static和final是Java中常用的关键字,它们的作用不同。
1. static关键字
static关键字可以用来修饰类、方法和变量,其作用是在内存中只保存一份,而不是每次创建对象都重新分配一块内存。具体来说:
- 静态变量:类的所有对象共享同一份静态变量,可以通过类名直接访问。
- 静态方法:不需要实例化对象就可以直接调用,但是不能访问非静态的成员变量和方法。
- 静态代码块:在类被加载时执行,只执行一次。
2. final关键字
final关键字可以用来修饰类、方法和变量,其作用是表示不可变的或者是最终的。具体来说:
- final变量:表示常量,一旦赋值就不能修改。
- final方法:表示该方法不能被子类重写。
- final类:表示该类不能被继承。
总的来说,static关键字主要用于内存优化和方便访问,final关键字主要用于限制修改和继承。
static final
"static final" 是 Java 中的关键字,用于定义常量。"static" 表示该变量在类加载时就已经初始化,不需要实例化对象就可以访问;"final" 表示该变量是不可变的,一旦被赋值就不能再修改。通常常量的命名规范是使用全大写字母和下划线来表示。例如:
```
public static final int MAX_NUM = 100;
```