我有很多字段依赖于一个字段的值,比如:
private String root;
private String rootHide = root+"&hide";
private String rootApple = root+".apple.me";
...
问题是, root
仅在方法内赋值(非静态,如果有关系的话):
public myMethod () {
root = "myRoot";
System.out.println(rootHide);
System.out.println(rootApple);
}
在赋值给 root
, rootHide
以及 rootApple
已分配(null+其文字部分)。
我想要,当根被分配时,要“重新分配”的变量(或者选择新根引用的变量),并因此导致 "myRoot&hide"
以及 "myRoot.apple.me"
分别地
2条答案
按热度按时间kfgdxczn1#
两种方式:
使用方法设置根
…并在该方法中设置其他两个字段:
你会一直这么做的
setRoot("myRoot");
而不是root = "myRoot";
####使用方法获取其他两个字段…并用以下方法计算它们的值:
然后删除字段
rootHide
以及rootApple
,并且总是打电话getRootHide()
以及getRootApple
而不是访问rootHide
以及rootApple
.7cwmlq892#
或者创建一个方法,在调用时更新所有变量
每次更新根时调用该方法,或者包括根的设置,以便只需要调用它而不首先设置根。