首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C++ >> C++ 入門

Java 面向對象編程(二):成員變量、方法重載與構造函數詳解

     編輯:C++ 入門

第七講:面向對象編程(二)

本講深入講解 Java 類的核心組成:成員變量(狀態)、方法(行為)、方法重載、構造函數,並辨析各類變量的區別與初始化規則。

一、成員變量(類或對象的狀態)

1. 變量分類與區別

類型關鍵字別名定義位置生命周期
類變量static靜態變量/靜態成員變量類中,方法外類加載到類卸載
實例變量無 static非靜態成員變量類中,方法外對象創建到銷毀
局部變量無—代碼塊/方法內代碼塊執行期間
方法參數無—方法聲明中方法調用期間

2. 代碼示例

public class Demo {
    static String s1 = "類變量";
    String s2 = "實例變量";
    { String s3 = "初始化塊局部變量"; }
    static { String s4 = "靜態初始化塊局部變量"; }
    public void print(String s5) { String s6 = "方法局部變量"; }
    public static void staticPrint() { String s7 = "靜態方法局部變量"; }
}

3. 初始化規則

  • 實例/類變量:有默認初始值(int=0, boolean=false, 引用=null)。
  • 局部變量/方法參數:無默認值,使用前必須顯式賦值,否則編譯報錯。

二、方法(類或對象的行為)

方法結構

修飾符 返回值類型 方法名(參數列表) { 方法體 }
  • 修飾符:可選,控制訪問權限。
  • 返回值類型:必選,void 表示無返回值。
  • 參數列表:0~多個,逗號分隔。
  • 方法名:必選,首字母小寫。
  • 方法體:可選,抽象方法無方法體。

三、方法重載

同一類中,方法名相同,參數列表不同(個數、類型、順序任一不同)。返回類型、修飾符可不同,但不能作為重載依據。

示例

class Num {
    public void max(int a, int b) { System.out.println(a>b?a:b); }
    public void max(double a, double b) { System.out.println(a>b?a:b); }
    public void max(int a, int b, int c) { 
        int m = a>b?a:b; System.out.println(m>c?m:c); 
    }
}

四、構造函數(構造方法)

特點

  • 與類名相同,無返回值類型(連 void 都不寫)。
  • 可重載,new 時自動調用對應構造函數。
  • 不能用 final、static、abstract 修飾。
  • 若未定義,編譯器生成無參構造函數;定義後不再生成。

示例

class Lion {
    private String name; private int age;
    public Lion() { System.out.println("無參構造"); }
    public Lion(String name, int age) {
        this.name = name; this.age = age;
        System.out.println("姓名:" + name + "\t年齡:" + age);
    }
}
public class Test {
    public static void main(String[] args) {
        Lion a = new Lion();
        Lion b = new Lion("黎開權", 20);
    }
}

構造函數 vs 普通方法

  1. 構造函數無返回值;普通方法有返回類型(或 void)。
  2. 構造函數名必須與類名相同;普通方法命名自由。
  3. 構造函數不可被 final、static、abstract 修飾;普通方法可。

總結

掌握變量分類、初始化時機、方法重載規則、構造函數特性,是寫好 Java 面向對象代碼的基石。

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