隨筆—面向物件的 封裝.多型.繼承
1.面向物件的高階:優化程式設計
封裝:
類中如何定義成員變數?
private int num;
概念
語法
3步驟
繼承:減少冗餘程式碼
繼承:一個類(子類)繼承另一個類(父類)
概念
語法
extends
過載??
final(修飾符)
static(main方法,static)
多型:
一種事物的多種表現形式
概念
語法
Father fa=new Son();//例項化
//Son son=new Son();
介面:代表能力,一種約定。
implement interface
Java語言就是使用面向物件開發出來的。
Date 時間
Calendar 日曆
Math
包裝類 Integer Double Short Float Boolean
集合(不同結構不同使用)
異常 (Exception)
檔案!IO流
記憶體(基本資料型別的變數中,引用資料型別的變數中應用)
int num=9;
String str="admin";
Student stu=new Student();
int[] nums={};
Student[] stus=new Student[10];
寫入
記憶體---------》檔案
《--------
讀取
3.封裝
隱藏成員變數
1.隱藏成員變數
將成員變數前加入修飾符private
結果:其他類在建立狗的物件的時候,在呼叫成員變數時顯示錯誤。
The field Dog.name is not visible
2.建立公有的getter/setter方法
在此類中建立公有方法
建立成員變數的賦值方法
public void setName(String name1){
}
注意:1.方法名稱必須是set+成員變數第一個單詞首字母大寫的成員變數名稱
2.方法的引數必須是成員變數的型別
成員變數的取值方法
public String getName(){
return name;//返回成員變數值
}
注意:1.方法名稱必須是get+成員變數第一個單詞首字母大寫的成員變數名稱
2.方法的返回值必須是成員變數的型別(返回的是成員變數裡面的值)
3.在setter/getter方法中給加入屬性控制
4.setter方法的引數名稱和成員變數名稱保持一致。(防止亂起名字)
this.name=name;
5.在本類中呼叫自己的成員變數和成員方法的時候,使用this
this代表當前物件
6.特殊方法的第一種。
構造方法:例項化--》建立物件+物件賦成員變數值
Constructor
語法
publlic 類名(){
}
public Dog(){
}
1,建立類的時候都會有一個隱藏的無參構造方法。
2,建立物件的時候就會調相應的構造方法。
3,構造方法由於方法名稱相同,因此構造方法的引數定義時注意,
不要兩個構造方法的傳遞引數一致(順序 型別 個數)。
4,當你在類中定義有參構造方法,隱藏的無參構造方法失效。
因此必須在類中顯示定義構造方法
例項化兩種方法
第一種
Dog dog=new Dog();
dog.setName("");
dog.setHealth();
dog.setStrain("");
第二種
Dog dog=new Dog("",,"");