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的方式,創建對象。

學識尚淺,如有錯誤請多多指教。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM