java final关键字用于修饰成员变量

java final关键字用于修饰成员变量

对于成员变量来说,如果使用final关键字修饰,那么这个变量也照样是不可变。

由于成员变量具有默认值,所以用了final之后必须手动赋值,不会再给默认值了。

对于final的成员变量,要么使用直接赋值,要么通过构造方法赋值。二者选其一。

必须保证类当中所有重载的构造方法,都最终会对final的成员变量进行赋值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package cn.itcast.day11.demo01;

public class Person {

private final String name/* = "鹿晗"*/;

public Person() {
name = "关晓彤";
}

public Person(String name) {
this.name = name;
}

public String getName() {
return name;
}

// public void setName(String name) {
// this.name = name;
// }
}