天天看點

了解有參構造器和無參構造器的作用

【一、概念】

java中構造方法指的是:

與類名相同,無傳回類型的方法,參數可以為空,也可以帶參數。

比如一個 Dao 類,private Dao(){}這個就是無參數的構造方法。

private Dao(String name){}這個就是帶參數的構造方法。

作用:用來初始化 java 類,提供類的初始化和執行個體化,以便調用。

【二、作用】

new一個對象的時候要用到構造函數,例如Hello hello = new Hello();這時調用的是Hello的無參數構造方法;Hello hello = new Hello(“hi”);這個是調用Hello有參數構造方法,在JAVA中如果不寫構造方法的話,會預設加上一個無參數的構造方法,但是如果已經有了一個有參數的構造方法,那麼無參數的構造方法就不會預設被加上.如果Hello類中已經有了一個有參數的構造方法,這時再使用Hello hello = new Hello();來建立對象的時候就會出錯,這就是為什麼書上要強調寫了有參數的構造方法就最好加一個無參數的構造方法。

【三、差別】

有參數的構造方法的主要目的是為類中的屬性初始化的,而無參數的構造方法,可以控制new對象。

假設你的午餐構造方法不是public 修飾 而是project ,

那麼别人将不隻能直接new一個對象,這就起到了控制作用。

為什麼要自動生成無參構造呢?

你沒有構造方法就不能new出對象 是以就給你生成一個無參構造方法

一般構造方法就是來控制你new對象的 還有就是初始化屬性