類的結構之三:構造器(構造方法、constructor)的使用
一、構造器的作用:
1.建立物件
2.初始化物件的屬性
封裝性的體現:1.將類中的屬性***私有化,通過public方法獲取get***()和設定set***()此屬性的值。
2.不對外暴露的私有的方法。
3.單例模式。(將構造器私有化即在乙個類中通過構造器只建立乙個物件)
4.如果不希望類在包外呼叫,可以將類設定為預設的。
二、說明:
1.如果沒有顯示的定義類的構造器的話,則系統預設提供乙個空參構造器
2.定義構造器的格式:許可權修飾符 類名(形參列表){}
3.乙個類中多個構造器中可以構成過載
4一旦顯式定義了類的構造器之後,系統將不再提供預設的空參構造器
5.乙個類中至少有乙個構造器
this關鍵字的使用:
1.this可以用來修飾:屬性、方法、構造器
this理解為:當前物件 或 當前正在建立的物件
在類的方法中,我們可以使用"this.屬性"或"this.方法"的方式,通常省略
但當方法的形參和類屬性同名時,我們需使用」this.變數",表明變數為屬性而非形參。
2.this呼叫構造:
①我們在類的構造器中,可以顯式的使用"this(形參列表)"方式,呼叫指定類的其他構造器。
②構造器中不能通過"this(形參列表)"呼叫自身
③如果乙個類中有n個構造器 最多有n-1個構造器中使用"this(形參列表)"
④規定:"this(形參列表)"必須宣告在當前構造器的首行
⑤構造器內部,最多只能宣告乙個"this(形參列表)",用來呼叫其它構造器
例題:
public class account
public void setid(int id)
public int getid()
public void setbalance(double balance)
public double getbalance()
public void setannualintetestrate(double annualinterestrate)
public double getannualinterestrate()
public void withdraw(double amount)
balance -= amount;
system.out.println("成功去出:" + amount);
} public void deposit(double amount) }
}
public class customer
public string getfirstname()
public string getlastname()
public account getaccount()
public void setaccount(account account)
}
public class customertest
}
物件導向13講 物件導向二
程式的話說的極端點就是乙個個類堆積而成的。1 建立類的方法 class 類名 駝峰命名法 屬性 例如 乙個人身高,性別等。電腦例如cpu 型號等。方法 例如 person類中有睡覺學習等屬性,對於電腦來說開機關機。屬性也叫成員變數,主要用於描述類的狀態。方法也叫成員方法,主要用於描述類的行為。類的定...
第13章 物件導向程式設計 13
13.13.3 迭代器 randseq和anyiter 1.randseq from random import choice class randseq object def init self,seq self.data seq def iter self return self def nex...
Day13 物件導向
學生類 public class student package oop2 乙個專案應該只存在乙個main方法 alt insert自動生成構造器 package oop2 public class person 有參構造 一旦定義了有參構造,如果想定義無參構造,無參就必須顯示定義 public p...