為什麼需要構造方法?
public class teacher
}
編寫乙個測試類,例項化乙個教師物件,並對其初始化,在控制台輸出該教員的自我介紹
**:
public class test
}
teacher類中有太多的屬性,每次給屬性賦值時非常麻煩:編碼量大,無法重用給屬性賦值的**。
執行結果:
什麼是構造方法?
1.構造方法負責初始化類中的例項變數。(非「類變數」)
2.構造方法是一種特殊的方法,這種方法必須滿足以下語法規則:構造方法必須與類名相同;不包含返回值型別描述部分。
3.構造方法不能有static和final關鍵字修飾。
如何使用構造方法?
使用new關鍵字呼叫構造方法,即構造方法(非「類變數」)在建立物件(也稱物件例項化)時被呼叫。
**:
public class teachertest
}
由於teacher類沒有顯式構造方法,這時teacher類就會有乙個預設的無參構造方法。
顯示構造方法
1.建立類時,如果沒有顯式定義構造方法,則該類會存在乙個預設的無參構造方法;
2.可以在類中宣告乙個或多個有參構造方法,但每個構造方法在引數個數或引數資料型別上要有所差別:
3.如果類中存在顯式構造方法,則預設的無參構造方法將不復存在,除非顯式定義無參構造方法:
由於student類中顯式定義了構造方法,這時該類中預設無參構造方法就沒有了,所以使用new student()建立物件就會出錯。
顯式定義無參構造方法。
類中構造方法間的呼叫
1.類中可以有多個構造方法,構造方法之間可以通過this實現呼叫,但必須將呼叫建構函式**寫在有效**的第一行:
由於沒有將呼叫構造方法的**放在有效**的第一行,所以出錯,正確**如下圖所示。
2.普通方法不能使用this呼叫類中構造方法,例如:
普通方法printinfo試圖呼叫構造方法student(string name),但由於構造方法不能在普通方法中呼叫,所以出錯。
java 構造方法
構造方法的特點 1 構造方法的方法名必須和當前的類名保持一致。2 構造方法是沒有返回值的,也就是在書寫構造方法的時候不能書寫返回值型別 注意這裡連void都不能寫 可以新增修飾符 構造方法中需要注意的問題 1 如果在乙個構造方法中呼叫其他的構造方法,那麼這個this 呼叫必須寫在該類這個構造方法中的...
Java構造方法
所謂的構造方法,就是在建立物件的時候自動呼叫的方法。我們來直接看個例子。public class mail mail string name,string addr 有參的構造方法 public void send public class test 在mail郵件類中,我寫了三個方法,其中有兩個是...
Java 構造方法
構造器 構造方法 用於物件初始化!注意 1.構造方法名稱必須和類名稱相同!2.構造方法的呼叫只能在物件例項化的時候呼叫,當new 類名 之後,系統自動執行構造方法!不能通過物件名.構造方法去呼叫 無引數構造方法 public class cat 成員方法 跑動,吃東西 public void run...