博客园
虽然痛苦,却依旧要快乐,并相信着未来。

导航

 


Java 创建对象是一个映射的过程,类似于C中的指针,在堆中new 一块空间,再将变量名对应至那个空间。
String a = new String("空间");
String b = a;
a和b指向同一块区域String (“空间”)。
String是不能修改静态域final,一旦初始化就不能修改。
String还好,但这个在类中要特别注意。
一定一定不要写返回引用可变对象的访问器方法。
class Employee
{
private Date hireDay;
...
public Date getHireDay()
{
//return hireDay;//错误
return (Date) hireDay.clone();//正确,返回一个复制的新对象
}
}

Date date = employee.getHireDay();//employee 是Employee的一个实例

修改date也能同时修改employee中的hireDay,因为他们引用同一个Date对象。

 

再如下面例子:
public static void tripleSalary(Employee x){
x.raiseSalary(200);
}
调用
harry = new Employ(...);
tripleSalary(harry);

 

 

posted on 2019-08-10 16:36  砖猿  阅读(366)  评论(0编辑  收藏  举报