摘要: Java中的拷贝方式分为深拷贝和浅拷贝。简单来说,深拷贝就是把一个对象中的所有值,如果被拷贝对象中有对其他对象的引用,那么这个引用指向的对象本身会被重新创建。浅拷贝和深拷贝类似,但是如果被拷贝对象中有对其他对象的引用,只是这个引用会被拷贝,而不是这个被引用的对象。说起来有点绕口,那么我们就看看下面的图解吧:深拷贝:浅拷贝:来看下面这段代码:1234567891011121314151617181920public class Car { private String brand; private int price; public String getBrand() { ... 阅读全文
posted @ 2013-05-31 12:45 photosynthesiis 阅读(455) 评论(0) 推荐(0)
摘要: 最近在工作的时候,一句再正常不过的代码String a = “hello” + “world”;被改成了new StringBuilder().append(“hello”).append(“world”);当时就比较疑惑这样做的好处,后来到网上查找了一番之后才清楚这与Java中的字符串驻留机制有关,那么什么是驻留呢?顾名思义,驻留就是在内存中保留(在Java中,我们通常称驻留对象的地方为驻留池,不过它也是内存的一部分),它不仅存在于Java中,在C#中同样存在。那么我就写几个例子来讲解什么叫Java中字符串的驻留:1234567891011public class test { publi. 阅读全文
posted @ 2013-05-30 22:22 photosynthesiis 阅读(438) 评论(1) 推荐(0)