java_DAY08:構造方法,有參,無參
阿新 • • 發佈:2021-11-23
/學生類 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