使用类创建对象的时候,需要对每个属性赋值,这样就生成了新的对象。
有的时候希望对象的属性值在创建之后不再变化,例如身份证号,这时候需要把属性设置为常量。
常量使用final定义,例如:
private final String id;
常量的值不能发生变化,那什么时候给常量赋值呢?
有两种方式:定义的时候赋值,通过构造方法赋值。所以下面的两种方式都可以:
方式一:
private final String id="003";
方式二:
public ConstTest(String id){
this.id=id;
}
注意:如果采用了方式一,就不能在构造方法中再赋值了。下面的代码就是错误的:
private final String id="003";
public ConstTest(String id){
this.id=id;
}
常量必须通过上面的两种方式之一赋值,否则会报错。
常量不能通过其他方法修改,下面的代码也是错误的:
public void setConstTest(){
id = "002";
}
两种方式的区别:第一种方式下,该类的所有对象的该属性值都是相同的,这时候可以设置为静态方法,关于静态方法下次介绍;第二种方式下,每个对象具有自己的不变的属性值。
本文介绍了在Java中如何使用final关键字定义常量,并探讨了两种初始化常量的方法:直接赋值与通过构造方法赋值。此外,还讨论了这两种方式的区别及应用场景。
16万+

被折叠的 条评论
为什么被折叠?



