Java小程序中遇到過的空指針異常1

一、

1、1無參構造方法:

public Subject() {

}

//引用數據類型(數組、類、接口)需要創建對象賦值后才能使用;當為null時,調用方法時會報空指針異常(NullPointerException)

1、2有參構造方法:(注意這里的myStudents在構造方法中并沒有被初始化)

public Subject(String subjectName, String subjectID, int subjecctLife,Student[] myStudents,int stuNum ) {

this.setSubjectName(subjectName);

this.setSubjectID(subjectID);

this.setSubjectLife(subjecctLife);

this.setMyStudents(myStudents);

this.setStuNum(stuNum);

}

2、myStudents數組屬性的setter和getter方法

3、

二、這里之sub1在調用方法add()時,其實sub1中的myStudents數組是沒有初始化的,但是在add方法中有i < this.getMyStudents().length;則在調用getMyStudents()時,通過getMyStudents()方法進行了初始化;

三、總結

之所在getMyStudents()方法中根據其是否為空而判斷是否初始化,而不是在定義屬性myStudents時就初始化,是為了實現在用到的時候再開空間(當規模比較大,業務邏輯比較復雜的情況下,使用這種,效率會更高);

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,739評論 18 399
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,837評論 18 139
  • 一、基本數據類型 注釋 單行注釋:// 區域注釋:/* */ 文檔注釋:/** */ 數值 對于byte類型而言...
    龍貓小爺閱讀 4,288評論 0 16
  • 一. Java基礎部分.................................................
    wy_sure閱讀 3,832評論 0 11
  • 代碼地址https://github.com/MuchContact/TreeViewForContactBook...
    muco閱讀 435評論 0 0