java面向對象第一章
1、 使用類圖如何描述設計
- private(私有) 屬性
+ public(公共) 方法
訪問修飾符:
缺省(默認),只能被同一個包中的類訪問
private(私有的),訪問權限最小,只能自己訪問
public(公共的),訪問權限最大,任何類都可以訪問
protected(受保護的)【繼承中講解】
2、 面向對象設計的步驟
a) 發現類(名詞)
b) 發現屬性(名詞或形容詞)
c) 發現方法(動詞)
3、 類和對象的概念
l this關鍵字,表示當前類的對象
n 只能在當前類中使用
n 不能在static方法中出現
l static標記的方法或屬性,表示類的成員
n 在當前類,直接寫方法名來調用
n 在其他類中調用
必須使用【類名(或對象名).static成員名】
l final關鍵字,表示類的常量(存儲的是不變的數據)
n 修飾的全局變量(屬性),常量
n 常量名,遵循編碼規範,必須全部大寫
n 聲明後,必須馬上賦值,在後面的代碼中不能修改常量的值
n 如何調用常量?
u 在自己內部,直接寫常量名
u 在其他類中,通過【對象名.常量名】
4、 構造函數——1種特殊的方法
a) 特征?
i. 方法名和類名相同
ii. 沒有返回類型,void關鍵字都沒有
iii. 一般情況下,訪問修飾符是public的
b) 作用?
初始化類的成員
c) 如何調用?
創建對象時自動調用構造方法
類名 對象名=new 類名(【值】);
構造方法重載後,2個構造方法之間如何相互調用?
this(【值】);//必須寫在第一行
d) 註意事項:
i. 如果類中,沒有寫構造方法,系統會自動提供一個無參數的構造方法用於初始化類的成員
ii. 如果類中,寫了帶參數的構造方法,系統將不再自動提供無參數的構造方法
5、 方法重載
a) 特征
i. 在同一個類中
ii. 方法名相同
iii. 參數列表(個數、類型)不同
b) 註意事項:
與方法的返回類型,訪問修飾符沒有任何關系
2、 重載後的方法,如何調用?
根據傳遞的實參的個數和類型,自動查找對應的方法
6、 封裝的好處?
隱藏實現的細節,提高程序的可重用性和可維護性
7、 封裝的步驟?
l 將屬性的public或缺省權限 修改為私有的private
l 編寫封裝屬性的2個方法
n public void set屬性名(屬性數據類型 參數名){
}
n public 屬性的數據類型 get屬性名(){
return 屬性名;
}
l 修改setter方法體,編寫邏輯控制語句(比如if),限制參數不符合邏輯的值
1、 自動生成屬性對應的getter和setter方法
l 快捷鍵:Shift +Alt+ S+R
l MyEclipse中菜單欄
Scource——>Generate Getters and Setters…
java面向對象第一章