unit2 面向對象 1.面向對象:封裝 繼承 多態 面向對象強調結果 面向過程強調步驟 2.類與對象:對象是具體的實體(行為+屬性),類是抽象的模板(成員方法+成員變數) 導包--創建對象--使用: import cn.itcast.first.demo06.Student;//導包 Studen ...
unit2 面向對象
1.面向對象:封裝 繼承 多態
面向對象強調結果 面向過程強調步驟
2.類與對象:對象是具體的實體(行為+屬性),類是抽象的模板(成員方法+成員變數)
導包--創建對象--使用:
import cn.itcast.first.demo06.Student;//導包
Student stu = new Student();//創建對象
System.out.println(stu.age);//使用對象成員變數
stu.eat();//使用對象成員方法
成員變數:外,類中,有預設值,堆 局部變數:內,方法中,無預設值,棧
成員變數:屬性 成員方法:行為
封裝性:核心思想,一個方法就是一種封裝,調用方法就玩了,為了隱藏內部細節
3.private關鍵字:保護本成員變數,提高安全性
private int age;
//用private關鍵字將需要保護的成員變數進行修飾,但是private只能在本類內直接訪問,超出則報錯
//間接訪問private變數,就是定義一對set和get方法
this關鍵字:成員變數和局部變數重名時,就近原則,訪問局部變數
this.name = name;
//this用來區別成員變數和局部變數,避免變數重名
API補充:JDK_API_1_6_
例子:定義標準類:全用private修飾成員變數;全參構造方法,無參構造方法,Getter&Setter方法
標準類寫在Java Bean中里,只有java.lang包下的內容不用導包 (導包,創建,使用)
//set往裡放,有參數無返回
public void setAge(int num) { }
//get往外拿,有返回無參數
public int getAge() {return age;}
補充:構造方法也是可以進行重載的Overlord,this.num就是在運用本類的一個對象。方法重載同名字不同參數
4.Scanner類:實現鍵盤輸入
5.匿名對象:??
6.Random類:生成隨機數
7.ArrayList數組:對象數組??
8.字元串
9.static關鍵字
10.Array類
11.Math類
12.繼承,覆蓋重寫
super關鍵字
this關鍵字
13.抽象
14.介面
15.多態
16.final關鍵字
17.四種許可權修飾符