Java面向物件程式設計-類與物件概念
阿新 • • 發佈:2019-01-29
1.面向物件三大特徵:
a.封裝性:將客觀事物封裝成抽象的類,每個類都有自己的屬性與方法,並且類可以讓自己的資料與方法只讓可信的類或物件操作,對不可信的進行資訊影藏。
內部操作對外部而言不可信(保護性)
b.繼承性:可以使用現有類的所有功能,並且在無需重新編寫原有類程式碼的情況下進行功能上的擴充套件。(可重用)
c.多型性:(重點)指的是一個類例項的相同方法在不同情形下有不同的表現形式。
2.Java中類與物件的定義與使用
類是共性的概念,而物件是一個具體的、可以使用的事物。
類是生產物件的藍圖,先有類才可以產生物件。物件的所有屬性和行為,一定在類中進行的完整定義。
class 類名稱 {
屬性1;
屬性2;
...
方法1(){ }
方法2(){ }
...
}
類中的屬性與方法(不帶static關鍵字的)只能通過物件呼叫
編譯和執行都是主類,主類用到的其他類javac編譯器會自動編譯
物件的產生語法
類名稱 物件名稱 = new 類名稱();
class Person{ public String name; //屬性 public int age; //屬性 public void eat(){ //方法 System.out.println(name+"吃飯"); } public void sleep(){ //方法 System.out.println(name+"睡覺"); } public void work(){ //方法 if(age<20){ System.out.println(name+"老老實實讀書"); } else{ System.out.println(name+"老老實實搬磚"); } } } public class test{ public static void main(String[] args){ //根據Person類生產一個物件 Person per1 = new Person(); per1.name = "guo"; per1.age = 18; Person per2 = new Person(); per2.name = "ssh"; per2.age = 40; per1.eat(); per1.sleep(); per1.work(); per2.eat(); per2.sleep(); per2.work(); } }
new:表示在堆上新分配空間