1. 程式人生 > >第四章學習總結---201711671206

第四章學習總結---201711671206

1.類   class 類名{類體的內容}面嚮物件語言程式設計的三個特性:封裝性、繼承、多型。類宣告的變數被稱作物件變數,簡稱物件

類的定義包括類宣告和類體。class為關鍵字用來定義類。例如:class People和class 植物都是類宣告,類的名字要符合識別符號規定。(如果類名為拉丁字母,那麼名字的首字母要為大寫字母,如Hello、Time;類名最好要容易識別)

2.類體:類宣告之後的一對大括號{   }以及它們之間的內容稱為類體,大括號之間的內容稱為類體的內容。抽象的關鍵是抓住事物的兩個方面:屬性和行為變數的宣告:用來儲存屬性的值,方法的定義:可以對類中宣告的變數進行操作

3.類體中的內容可以分為兩部分:變數的宣告以及方法的定義。方法的定義包括:方法頭和方法體   方法頭{方法體的內容}

4.方法體中需要注意的是“在方法體中宣告的變數和方法的引數稱為區域性變數,區域性變數”區域性變數和類的成員變數不同,區域性變數只在方法內有效,而且與其宣告的位置有關。(啥時候宣告啥時候起作用)

注意要區分好成員變數和區域性變數:如果他們的名字相同,那麼成員變數被隱藏,它暫時失效。如果需要使用被隱藏的成員變數,那麼需要用到關鍵字“this”;區域性變數沒有預設值,成員變數有。例題P56不可以用沒有定義值的區域性變數來計算。成員變數的預設值為0

5.類的UML圖   P57的4.2.6 

6.構造方法(1)如果沒有編寫構造方法,那麼就預設構造方法為leader(){   }(2)構造方法沒有型別,void print(int a,int b)和int print()都不是構造方法。見書本P58

7.建立物件:物件的宣告一般格式為:的名字 物件名字;物件的使用:物件.變數/方法

8.物件的引用與實體:例如如下的賦值語句 p1=p2;將p2的引用賦給了p1.可以見P65頁的例題4_4

9.引數傳值:方法的引數是區域性變數,呼叫該方法時候這個引數才有作用。引數被分配空間以及要求呼叫者向引數傳遞值。可見P69例子6

10.類的組合和複用:一個物件a組合了物件b,那麼物件a就可以委託物件b呼叫其方法。P72例題8(記得打一下)

11.例項成員和類成員:類變數有用static宣告,我們日常見的變數都是例項變數。例項方法不僅僅可以操作例項變數也可以操作類變數。有static宣告的類變數可以和其他類共享。

12.方法過載:要滿足其中的條件:      引數的個數不同;引數個數相同,但引數列表中對應的某個引數的型別不同    

例如:float hello(int a,int b)和float  hello(long a,int b)以及 double hello(int a,int b)和float hello(int a,int b)

13.重載出現歧義見P83的4.8.2

14.使用this關鍵字 :this可以出現在例項方法以及構造方法中但是不可以出現在類方法中。P85

如果例項成員變數的名字和區域性變數的名字相同時,成員變數前面的this不可以去掉或者類名.不可以去掉。為了區分

15.如果一個類想使用和它不在同一個包中的那麼就需要用import語句。

16.訪問許可權:public(公共)、protected(保護)、private(私有)。

私有變數/方法:別的類不可以訪問

公有變數/方法:其他類可以訪問

友好變數/方法:不用public(公共)、protected(保護)、private(私有)修飾的就為友好的~只要同一個包的類都可以訪問

保護變數/方法:只要同一個包的類都可以訪問

17.物件陣列:建立以及使用陣列可以見P96    stu[0]=new student();表示的是使用第一個元素。

18.P100開始的一個例題需要去看!!!1