黑马程序员技术交流社区
标题:
String
[打印本页]
作者:
vipzh
时间:
2012-12-2 17:39
标题:
String
怎样理解String类是一个不可变类?
作者:
xjandrew
时间:
2012-12-2 18:08
不可变类:创建该类的实例后,该实例的属性是不可改变的。
java提供的包装类和java.lang.String类都是不可变类。当创建它们的实例后,其实例的属性是不可改变的。
自定义一个不可变类
Class Name
{
private String firstName;
private String lastName;
public Name(String firstName ,String lastName)
{
this.firstName = firstName ;
this.lastName = lastName ;
}
public String getfirstName()
{
return firstName ;
}
public String getlastName()
{
return lastName ;
}
}
1.使用private 和final修饰符修饰变量。
2.提供带参数的构造器用于根据参数来初始化类里的属性。
3.仅为该类的属性提供getter方法,不提供setter方法。
4.如果有必要,重写Object类中的equals方法和hashCode方法
作者:
丁桂松
时间:
2012-12-2 23:36
翻开api 找到Strng 你发现他是用final修饰的类.因此你懂得什么是final就懂得为何String 不可变了.api是超级大师写出来的.无人比他的注释更有权威性.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2