String是不可变对象。String类中每一个看似会修改String值的方法,实际上都是创建了一个全新的String对象。
不可变性会为String的+操作带来效率问题
String对象作为方法参数时,传递的是对象引用的一个拷贝。
打印对象可能造成的递归错误:
如果想通过toString方法打印对象的地址,并在toString方法中直接打印this对象,则当打印到this时又会调用当前对象的toString方法,即造成了递归错误。我们需要将this写成super.toString()
String是不可变对象。String类中每一个看似会修改String值的方法,实际上都是创建了一个全新的String对象。
不可变性会为String的+操作带来效率问题
String对象作为方法参数时,传递的是对象引用的一个拷贝。
打印对象可能造成的递归错误:
如果想通过toString方法打印对象的地址,并在toString方法中直接打印this对象,则当打印到this时又会调用当前对象的toString方法,即造成了递归错误。我们需要将this写成super.toString()