JAVA 基礎 /第六課: 物件導向 / JAVA中的類和對象,物件導向java
2018-03-06
一、面向過程與物件導向
1.面向過程編程: 從解決問題的每一個步驟入手,適合於解決比較小的簡單問題。 程式 = 演算法+資料。
2.物件導向編程:按照現實世界的特點來管理複雜的事物,把它們抽象為一個對象,具有自己的狀態和行為,通過訊息的反應來完成一定的任務。
程式 = 對象+訊息。
二、物件導向三大特性:
1.封裝 : 將其資訊屬性和方法具體實現隱藏起來,只提供調用方法的介面,既封裝。
2.繼承: 將一個已有類中的屬性和方法保留,可再加上自己特有的屬性和方法形成一個新類,既繼承。
3.多態: 指同名但有不同的具體實現的多個方法同時存在一個程式中。有兩種是方法:重載和覆蓋。
類(Class)是對一組具有相同屬性、操作和關係的同類事物的描述,是抽象的、概念上的定義。
對象(Object)是實際存在的該類事物的每個個體,因而也稱執行個體(instance)。
三、類的定義:
類主要定義類的屬性(變數)、方法和關係。
類由類聲明和類體構成;格式:
//類聲明public class Hero { //類體 String name; //姓名 float hp; //血量 float armor; //護甲 int moveSpeed; //移動速度 public static void main(String[] args) { Hero garen = new Hero(); garen.name = "蓋倫"; garen.hp = 616.28f; garen.armor = 27.536f; garen.moveSpeed = 350; Hero teemo = new Hero(); teemo.name = "提莫"; teemo.hp = 383f; teemo.armor = 14f; teemo.moveSpeed = 330; } }
類就像一個模板,根據這樣一個模板,可以建立一個個的具體的英雄
一個個具體的英雄,就叫一個個的對象
new Hero() 就是java中建立一個英雄對象的意思
四、對象的聲明:
對象的執行個體化和初始化
Person p1 = new Person(“Tom”,0);
類的名字:Person
對象的名字: p1
new關鍵字執行個體化已經聲明的對象,並在堆中分配記憶體空間;
當一個對象被建立時,會對其中各種類型的成員變數自動進行初始化賦值。
除了基礎資料型別 (Elementary Data Type)之外的變數類型都是參考型別,如上面的Person及前面講過的數組。