對象和類(上)
面向對象程序設計:面向過程的結構化程序設計、什麼是抽象數據類型、什麼是類
定義一個類:定義類的成員變量、定義類的方法
建立並使用對象:使用new關鍵字建立對象、引用類型變量、訪問對象的成員遍歷、調用方法、
引用類型變量的賦值、null和NullPointException編程
1.1.2. 什麼是抽象數據類型
所謂抽象數據類型能夠理解爲:將不一樣類型的數據的集合組成一個總體用來描述一種新的事物。設計模式
1.1.3. 什麼是類
類定義了一種抽象數據類型。
類不但定義了抽象數據類型的組成(成員變量),同時還定義了能夠對該類型實施的操做(方法)。數組
什麼是對象---------真實存在的單個個體【具體的】,現實中存在的都是對象。 對象是類的具體實現
什麼是類-----------類型/類 表明一類對象【抽象的】 找類以前先找對象 類是對象的模板數據結構
類中能夠包含:
1.全部對象所共有的屬性/特徵 ------------變量
2.全部對象所共有的行爲 ------------------方法測試
new 一個對象後,變量的默認值是null設計
經過同一個類建立的對象:
同一類型的對象 特徵相同(使用相同的變量、方法),數據不一樣(賦值不一樣)指針
類是對象的模板,對象是類的具體實例。-------------------------對象
類定義了一種抽象數據類型,而類不但定義了抽象數據類型的組成(成員變量),同時還定義了對該類型能夠實施的操做(方法)接口
1.2. 定義一個類圖片
類是一種引用數據類型。類爲對象的模板,簡單的說就是分類。
類的定義包括「成員變量」的定義和「方法」的定義,其中「成員變量」用於描述一類對象共同的數據結構
在Java語言中,類的成員變量的定義可使用以下語法:
class 類名 {
成員變量類型 變量名稱;
………
}
1.2.2. 定義類的方法
類中除了定義成員變量,還能夠定義方法,用於描述對象的形爲,封裝對象的功能
class 類名 {
修飾詞 返回值類型 方法名稱(參數列表) {
方法體………
}
… … …
}
1.3. 建立並使用對象
1.3.1. 使用new關鍵字建立對象
類定義完成後,可使用new關鍵字建立對象。建立對象的過程一般稱爲實例化。
1.3.2. 引用類型變量
爲了可以對實例化的對象進行訪問控制,需一個特殊的變量,即引用。對引用有兩點須要說明:
1. 引用類型變量能夠存儲該類對象的地址信息,一般稱爲「指向該類的對象」,當一個引用類型變量指向該類的對象,就能夠經過這個變量對對象實施訪問。
2. 除8種基本類型以外,用類、接口、數組等聲明的變量都稱爲引用類型變量,簡稱「引用」。
1.3.4. 引用類型變量的賦值
引用類型變量存儲的是對象的地址信息, 對引用類型變量的賦值, 除了使用上面的new關鍵字之外,還能夠有另一種賦值方式,
即:相同類型的引用類型變量之間相互賦值。 ----------------------------------
須要注意的是:引用類型變量之間的賦值不會建立新的對象,但有可能會使兩個以上的引用指向同一個對象。----------------------------
Cell c=new Cell();
Cell cc=c; //cc 和 c 指向了同一個對象
引用類型 之間 用 =:對一個引用的改變,會影響另外一個引用 ------------------------------------
基本類型 之間 用 =:對一個變量的修改,不會影響另外一個變量------------------------------------------------》【重要】
1.3.5. null和NullPointerException
引用類型默認值爲:null--------------------------
對於引用類型變量,除了上面的兩種賦值方式以外,還能夠對其賦值爲null。
null的含義爲「空」,表示尚未指向任何對象-----------------------【重要】
須要注意:
當一個引用的值爲null的時候,若是經過引用訪問對象成員變量或者調用方法是不合邏輯的(因其沒有指向某對象,天然不會有屬性和方法),此時,會產生NullPointerException(空指針異常)。
面向對象:OO
OOD-------------面向對象設計
OOA-----------面向對象分析
OOAD---------面向對象分析和設計
OOP--------面向對象編程
OA-----------辦公系統 用.NET寫的
產品-------------全部人都能用
項目-------------只適應一個公司使用
高質量的代碼:
複用性好、擴展性好、維護性好、可移值性好、健壯性好(不能常運行出錯)
俄羅斯方塊設計模式:
1.找對象 有不少的格子
2.抽類 格子類Cell
3.設計類中的變量、方法
4.建立對象並測試
Cell{
顏色,形狀,寬,高-------> 用圖片
行號,列號
下落的方法
}
數據類型 引用類型變量 指向 對象
Student s = new Student();
數據類型 基本類型變量
int a = 10;
除8種基本類型以外,用類、接口、數組等聲明的變量都稱爲引用類型變量,簡稱「引用」
課後做業:
2 請描述類和對象的關係
參考答案
對象是一個客觀存在的實體,是面向對象編程過程當中分析與解決問題的出發點與基礎。對象的實質就是內存中的一塊數據存儲區域,其數據結構由定義它的類來決定。
類是用於構建對象的模板,對象經過類的實例化產生,一個類能夠建立多個對象,每一個對象擁有本身的數據和行爲。
3 請描述引用類型和基本類型的區別
參考答案除8種基本類型以外,用類名(接口、數組)聲明的變量稱爲引用類型變量,簡稱「引用」。引用的功能在於訪問對象。基本類型變量自己就包含了其實例數據,而引用類型變量中存儲的是某個對象在內存中的地址信息。當一個引用類型變量指向該類的對象時,就能夠經過這個變量訪問對象。