static与final关键字在Java中的使用
-
修饰类
-
修饰方法
-
修饰变量
-
final修饰变量
- 修饰类变量
- 在声明的时候初始化
- 在声明的时候没有初始化,在静态代码块中初始化
- 修饰实例变量
- 在声明的时候初始化
- 在声明的时候没有初始化,在构造方法中初始化
- 在声明的时候没有初始化,在普通代码块中初始化
- 修饰基本类型变量
- 一旦初始化后,其值不能够再做改变
- 修饰引用类型变量
- 初始化后,引用不能够重新指向其他对象,但对象的内部属性等可以改变
public class Student { /** * final修饰的类变量 * 1:声明的时候初始化 * 2:声明的时候不初始化,而后在静态代码块中初始化 * final修饰的成员变量 * 1:声明的时候初始化 * 2:声明的时候不初始化,而后在构造函数中初始化 */ //static final age=18; static final int age; static { age=18; } final String name; public Student(String name){ this.name=name; } public static void main(String[] args) { System.out.println(Student.age); Student student=new Student("zhangjiabin"); System.out.println(student.name); } }
public class Teacher { /** * final修饰变量的初始化问题 */ final int age; { age=12; } public Teacher(){ } public static void main(String[] args) { Teacher teacher=new Teacher(); System.out.println(teacher.age); } }
- 修饰类变量
-
static修饰变量
- 表示这个变量是一个静态变量,类变量。
-