Java之構造器的作用


我總是要把構造器和方法混淆,后來發現,

方法,實際上,是需要用於執行java代碼的,而構造器,

 

 

構造器,,,是一個類的實例!!

 

為什么呢?

類的實例,我們需要用類來創建對象,進而訪問其屬性,因為實例是需要被用來調用的,但是調用的話,我們不得不去考慮一個問題,就是對象,最終是被存儲在內存里面的,而存儲的時候,我們的內存不得不需要給他再另外開辟新的內存空間,那么,java是如何給這種我們所需要的類來開辟內存空間的呢?這就涉及到了java的內存機制,就是說,我們必須要給這個類制作一個構造器,而且這個構造器的名稱必須和這個類的名稱是一致的,這樣,我們的java編譯器才能識別這個類,進而給這個類在內存中開辟內存空間,也就是我們所說的,我們手動,人為的給他進行“初始化”,事例如下:

  class Rock {

    Rock() {

      System.out.print("Rock");

    }

  }

 

  這樣,當我們在對Rock類進行調用的時候,我們的java編譯器就會事先對他進行“自動”地初始化,開辟內存空間

 

  那么現在問題又來了,舉個例子,我們的Rock()方法需要帶有一個參數,形參,但是整個代碼中,需要不僅僅是帶有形參的Rock();還需要不帶形參的Rock(),在我們的構造器對類進行構造的時候,需要將功能類似的,但形參不同的方法同時打包在該類下,以便在我們調用某個方法的時候,直接重載構造器中的該方法,可以說,這種構造形式,滿足了我們對功能類似,形參不同的方法,調用的時候,進行重載,而滿足了編譯器自動初始化,人不需要手動初始化的需求。

  而且有個,問題,本來兩個方法,功能上是類似的,一棵樹和一株樹苗,你非得要給他們起不同的名字,多別扭,好在有了構造器,能夠是功能相似的方法起相同的名字,不同的參數,而能夠在被調用的時候得以重載,多么牛逼的構造器 啊


免責聲明!

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



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