今天看Think in java,在看到方法调用的别名问题时,想到老师说要用get,set方法替代域的直接调用,想来还是很有好处的。
如下:
class Letter{
char c;
}
public class PassObject{
static void f(Letter letter){
letter.c='z';
}
public static void mian(String[] args){
Letter l = new Letter();
l.c = 'a';
System.out.println("l.c:" + l.c);
f(l);
System.out.println("l.c" + l.c);
}
}
其输出的结果为:
lc:a
lc:z
当在进行复制操作时,可能有很多地方都可以修改函数的值,当发现有错误的时候,你很难确定它是在什么地方别修改的,可读性不太好。
而如果使用get,set方法则复制操作使用set方法,当值发生改变的时候,必然会在set函数中发生,可读性更好,更安全。
本文探讨了在Java编程中通过使用get和set方法替代直接域调用,以提升代码的可读性和减少错误的可能性。具体案例展示了这种实践在对象复制和属性修改时的优势。
6146

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



