重要知識點總結如下:
1,抽象,封裝,繼承,多態是物件導向程式設計中得四個特點.
2,物件導向得軟體開發大體分為:物件導向的分析,物件導向的設計,物件導向的實現.
可概括為如下過程:分析使用者需求,從問題中抽取物件模型;細化模型,設計類,包括類的屬性和類間的
相互關係,同時觀察是否有可以直接引用的已有類或組件;選定一種物件導向的程式設計語言,具體編碼實現
上一階段類的設計,並在開發過程中引入測試,完善整個解決方案.
3,物件導向程式設計方法的優點是:可重用性,可擴充性,可管理性.
4,類的定義:class前的修飾符分為存取控制符和非存取控制符兩大類.存取控制符包括public和private.
非存取控制符包括abstract(抽象),final(最終).
5,final類是最終類,是不能有子類的類.abstract和final不能同時修飾一個類,因為抽象類別本身沒有具體對象,
需要派生出子類後在建立子類的對象.而最終類不可能有子類.
6,建立對象的格式為: 類名 對象名=new 構造方法(參數);注意前面是類名後面是構造方法.
注意構造方法沒有傳回型別,也不能寫void,主要用於完成類對象的初始化工作,一般不能直接由編程
直接調用,而是用new運算子來調用.
7,如果class前面由public修飾符,則預設構造方法的前面也應該有public修飾符.
8,類中有static修飾的域或方法,可用類名或對象名訪問,否則只能用對象名訪問.
9,修飾域的存取控制符可以是:public,private,protected,private protected.非存取控制符可以是:
static,final,volatile(易失域)
10,類變數的最本質的特點是:他們是類的域,不屬於任何一個類的具體對象執行個體.不是儲存在某個對象執行個體的記憶體空間中,而是儲存在類的記憶體地區的公用儲存單元中.
11,局部變數是在方法體內聲明的,只有當方法被調用時他們才存在,因而只能在本方法內使用,不存在存取控制符,也不能聲明為靜態變數(static),但可以聲明為final變數.局部變數必須初始化.
12,修飾方法的存取控制符可以是:public,private,protected,private protected,修飾方法的非存取控制符可以是:static,final,abstract,native(本地方法),synchronized(同步方法)。
13,用static修飾的變數或方法都為類成員,類成員可以用類名或執行個體名訪問,執行個體成員只能用執行個體名來訪問。
14,如果一個類中含有抽象方法,則此類必須為抽象類別,如果抽象類別的子類不為抽象類別,則子類必須實現父類的所有抽象方法。抽象方法不能用靜態方法和最終方法。抽想方法只有函數頭的聲明,而用分號來替代方法體,沒有大括弧。如abstract void abstractmethod();
15,this變數用在一個方法的內部,指向當前對象,當前對象指的是調用當前正在執行的方法的那個對象。super變數是直接指向父類的構造方法,用來引用父類種的變數和方法。(由於他們指的是對象,所以不能通過它來引用類變數和類方法)
16,如果要引用一個包中的多個類,可以用星號來代替。使用星號只能表示本層次的所有類,而不包括子層次下的類。所以經常需要用兩條語句來引入兩個層次的類:import java.awt.*;import java.awt.event.*;
17,存取修飾詞:
--類中限定為public的成員可以被所有的類訪問。
--類中先定位private的成員只能被這個類本身訪問。同一個類的不同對象可以訪問對方的private域變數或調用對方的域方法,這是因為訪問保護控制在類的層級上,而不是對象的層級上。
--類中限定為protected的成員可以被這個類本身,它的子類(包括同一個包中和不同包中的子類),以及同一個包中的其他類訪問。
--用private protected修飾的成員可以被該類本身訪問,也可以被該類的所有子類訪問。
--預設存取控制符規定只能被同一個包中的類訪問和引用,而不能被其他包的類訪問。即他的存取權限是friendly。
18,注意:
----abstract和private,static,final,native不能並列修飾同一個方法。
----abstract類中不能有private修飾的域和方法
----static方法不能處理非static的域。
19,重載方法的參數必須不同,或者是參數個數不同,或者是參數類型不同。重載的多個方法必須返回相同的資料類型。
20,在java中,一個類擷取某一介面定義的功能並不是通過直接繼承這個介面的屬性和方法來實現的。因為介面中的屬性都是常量,介面的方法都是沒有方法體的抽象方法,沒有具體定義操作。