首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Java 兩個構造函數輸出差異:成員變量未初始化導致 null

     編輯:程式設計綜合問答

代碼對比

// name1:構造函數未賦值
public Name1() { }
public Name1(String f, String l) { first=f; last=l; }

// name:構造函數賦值
public Name() { first="默認"; last="值"; }

現象

調用無參構造函數創建對象:

  • name1 輸出 null null(成員變量默認 null)
  • name 輸出 默認 值(構造函數顯式初始化)

結論

Java 成員變量默認值為 null(引用類型)/ 0/false(基本類型)。若無參構造函數不顯式賦值,字段保持默認值。良習:在聲明處初始化或無參構造函數中賦默認值。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved