1. 程式人生 > 其它 >java_DAY08:構造方法,有參,無參

java_DAY08:構造方法,有參,無參

/學生類
public class Student {
    
    //屬性
    String name;
    int age;
    String sex;

    //系統預設的無參構造方法,寫和不寫他都是存在的
    public Student() {
    }
    
    //有參構造方法,建立物件的時候就已經給了初始值了
    public Student(String name, int age, String sex) {
        this.name = name;
        this.age = age;
        this.sex = sex;
    }
}

作用:建立物件,初始化物件

特點:

1、無參構造方法,與類同名,不含返回型別,當開發人員沒有編寫自定義構造方法時,java會自動新增預設構造方法,預設構造方法沒有引數,如果編寫了自定義方法,需要新增無參方法

2、構造方法一般都是public的,才能被系統呼叫。

3、無參構造在給物件屬性賦值時比較麻煩,可以定義有參的構造方法。

當成員變數(屬性)和方法引數同名時,一般使用this表示當前物件,如:this.name = name;

4、構造方法經常用於程式初始化工作,例如:人出生要“洗澡”,就可以在人的構造方法時加入完成“洗澡”的程式程式碼,程式就不必每個人出時一個一個地告訴他們要“洗澡”了。

5、當類有了帶參構造方法之後,系統不再自動生成預設的無參構造方法,若使用需重新定義

要求:如果一個類中有帶引數的構造方法時,必須要定義無參的構造方法

6、構造方法只能用於建立物件時,不能在程式中像呼叫其他方法一樣呼叫它,但是可以用this()的形式在其他構造方法中呼叫它,注意this()必須在第一行。

構造方法和普通方法的區別:

構造方法訪問修飾符一般是public, 一般方法根據實際情況選擇修飾符

構造方法沒有返回值型別,一般方法要麼無返回值-void,要麼有返回值

方法名與類同名,一般方法見名思意,遵循駝峰命名規則

構造方法的方法體是物件的初始化程式碼,一般方法是功能的實現

呼叫方式不一致,普通方法需要使用物件來呼叫,構造方法是new, this, super