java中new一个对象和对象=null有什么区别

原创:转载请注明出处

今天在写代码时,遇到一个问题,特此进行记录。
 for (ProfileDto profileDto : profile)
            {

             // Profile resProfile=null;
                Profile resProfile=new Profile();

              // 将profileDto对象的属性值复制给resProfile对象
                Tools.copyPropertiesIgnoreNull(profileDto, resProfile);
                proList.add(resProfile);
            }

今天在写这段代码时,起初是Profile resProfile=null;然后debug走到复制属性方法的时候,就直接跳出了,

然后改为new的方式就ok了。

所以就很好奇,对此特地进行研究和总结。

        对象 = null 指向到一个空地址,只是声明了一个对象的引用,并没有在jvm中开辟内存,已进行存储。

而u2 指向的一个具体的对象,对象需要空间存放的。在对象引用的时候,会将对象的内存地址传给引用的对象,以进行存储。。。

       另外,如果你创建的对象,需要自己去读取操作数据,就需要通过new的方式,可以进行初始化,如果是接收其他地方的

传值,可以不通过new的方式,创建对象。

学识尚浅,如有错误请多多指教。

 

posted @ 2017-07-14 08:59  香吧香  阅读(13743)  评论(0编辑  收藏  举报