物件導向介紹
- 學習獲取已有的物件並使用
- 學習如何自己設計物件並使用—>物件導向語法
學習步驟:
- 設計物件並使用
- 封裝
- this關鍵字
- 構造方法
- 標準JavaBean
- 物件物件記憶體圖
- 補充知識:成員變數、區域性變數區別
設計物件並使用
類和物件:
-
類(設計圖):是物件共同特徵的描述
-
物件:是真實存在的具體東西
在Java中,必須先設計類才能獲得物件
如何定義類:
Public class 類名 {
1、成員變數(代表屬性,一般是名詞)
2、成員方法(代表行為,一般是動詞)
3、構造器(後面學習)
4、程式碼塊(後面學習)
5、內部類(後面學習)
}
如何得到類的物件:
類名 物件名 = new 類名()
eg:Phone p = new Phone();
如何使用物件:
-
訪問屬性:物件名.(點)成員變數
-
訪問行為:物件名.(點)方法名(...)
eg:
package com.itheima.Class;
public class Phone01 {
String brand;
double price;
public void call(){
System.out.println("手機在打電話");
}
public void playGame(){
System.out.println("手機在打遊戲");
}
}
例子:
package com.itheima.Class;
public class Phone01Test01 {
public static void main(String[] args) {
Phone01 p = new Phone01();//建立手機的物件
p.brand = "小米";//分別賦值
p.price = 1999;
//獲取手機物件中的值
System.out.println(p.brand);
System.out.println(p.price);
//呼叫手機中的方法
p.call();
p.playGame();
Phone01 p2 = new Phone01();
p2.brand = "蘋果";
p2.price = 8999;
System.out.println(p2.brand);
System.out.println(p2.price);
p2.call();
p2.playGame();
}
}
執行結果:
小米
1999.0
手機在打電話
手機在打遊戲
蘋果
8999.0
手機在打電話
手機在打遊戲
1、類和物件是什麼:
類:是共同特徵的描述(設計圖)
物件:是真實存在的具體例項
2、如何得到物件:
Public class 類名 {
1、成員變數(代表屬性,一般是名詞)
2、成員方法(代表行為,一般是動詞動詞)
類名 物件名 = new 類名()
3、拿到物件後能做什麼?
物件.(點)成員變數;
物件.(點)成員方法(....)
定義類的補充注意事項:
-
用來描述一類事物的類,專業叫做: Javabean類
在JavaBean類中是不寫main方法的
-
在以前編寫main方法的類叫做測試類:
我們可以在測試類中建立Javabean類的物件並進行賦值呼叫
Public class 類名 {
1、成員變數(代表屬性)
2、成員方法(代表行為)
eg:
Public Class Student{ //屬性(成員變數) String name; //行為(方法) Public void Study(){ } Public void sleep(){ } }
注意:
-
類名首字母建議大寫,需要見名知意,駝峰模式。
-
一個Java檔案中可以定義多個class,類前只能一個類是public修飾,而且public修飾的類名必須成為程式碼檔名
實際開發中建議還是一個檔案定義一個class類
-
成員變數的完整定義格式是:修飾符 資料型別 變數名稱 = 初始化值;一般無需指定初始化值,存在預設值
-
練習:
package com.itheima.Class;
//物件導向小練習:
public class Girlfriend {
//屬性
String name;
int high;
String gender;
int age;
//行為
public void eat(){
System.out.println("她會吃飯");
}
public void play(){
System.out.println("她會幹活");
}
}
package com.itheima.Class;
public class GirlfriendTest {
public static void main(String[] args) {
Girlfriend p1 = new Girlfriend();//建立一個物件
p1.name = "筱筱";
p1.high = 170;
p1.gender = "女";
p1.age = 18;
System.out.println(p1.name);
System.out.println(p1.high);
System.out.println(p1.age);
p1.eat();
p1.play();
Girlfriend p2 = new Girlfriend();//建立第二個物件
p2.name = "詩詩";
p2.high = 168;
p2.gender = "女";
p2.age = 18;
System.out.println(p2.name);
System.out.println(p2.high);
System.out.println(p2.age);
p2.eat();
p2.play();
}
}
執行結果:
筱筱
170
18
她會吃飯
她會幹活
詩詩
168
18
她會吃飯
她會幹活
注意:
定義類有哪些建議,有什麼需要注意的?
-
類名首字母建議大寫,英文、有意義,滿足駝峰模式,不能用關鍵字滿足標誌符規定
-
一個程式碼檔案中可以定義多個類,但是隻能定義一個類是public修飾的, Public修飾的類名必須是Java程式碼的檔名稱
成員變數的格式是什麼樣的,有什麼特點?
-
成員變數的完整定義格式是:修飾符 資料型別 變數名稱 = 初始化值
-
一般無需指定初始化值