java 关键字final

时间:2024-12-25 11:03:50

一、最终的意思,可以修饰类,方法,变量。
特点:
A:它修饰的类,不能被继承。
B:它修饰的方法,不能被重写。
C:它修饰的变量,是一个常量。
二、面试相关:
1、局部变量
基本类型 值不能发生改变

例如:

java 关键字final

我们用final修饰局部变量a,但当我们想要修改a的值是不允许的。

引用类型 地址值不能发生改变,但是对象的内容是可以改变的

/**
*
* <p>Title: FinalTest</p>
* <p>Description:final测试 </p>
* <p>Company: </p>
* @author sun
* @date 2017年5月3日 下午8:23:53
*/
public class FinalTest {
public static void main(String[] args) {
final Student student = new Student("sun", 20);
student.setAge(10);
System.out.println(student.getAge());
}
} class Student {
private String name;
private Integer age; public Student(String name, Integer age) {
this.name = name;
this.age = age;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public Integer getAge() {
return age;
} public void setAge(Integer age) {
this.age = age;
}
}

结果输出age值为10,说明对象的内容是可以改变的。

2、初始化时机
只能初始化一次。
常见的给值
定义的时候。(推荐)
构造方法中。