week4 Class Field Method
2017-07-04(二)
[Java Week4] 類、字段、方法
類
定義:類是組成java程序的基本要素,它封裝一類對象的狀態與方法,就是把變量跟函數放在一對括號的類裡面。
繼承
用法:一個類只能有一個父類,透過extends
好處:可修改父類的行為、狀態,甚至添加新的狀態與行為,可以提高程序的抽象度
字段:
定義:是類的屬性,用變量來表示
隱藏:定義與父類的相同域變量,實際用得較少
添加:增加心得域變量,使得子類比父類多一些屬性
方法
定義:是類的功能與操作,用函數表示
構造方法(constructor):用來初始化一個新對象,與類同名,不返回數據type,假設沒有定義任何夠照方法,系統會自動產生一個構造方法
覆蓋(override):子類也可以重新定義父類的同名方法
繼承:student繼承Person的sayHello方法
添加:像是在student中,增加判別分數方法
重載(overload):方法有相同名字,但是方法的簽名(signature)不同、參數個數、參數類型不同,這樣可以實現多態(Polymorphism)
This:
解決局部變量
域名問題,this.age表示域變量,而age表示參數變量
調用另一種方法:調用語句要放在第一句
控制符(Modifiers):
訪問:
private(限同一類中)
默認(同一包、同一類中)
protected(同一包、同一類、不同包的子類)
public(全部都能訪問)
非訪問:
static:靜態、非實例的,不屬於任何一個對象,可以用來表示全局變量,不能用this或super,例如Math.random()
final:不能被繼承,是不能被子類覆蓋,是只讀量,static final表示常量
abstract:抽象類只需聲明,不需實現,用分號而不是{},像是範例代碼的animal
接口(Interface):
實現:implements,可以實現多繼承
定義:某種特徵的約定,所有方法都是,public abstract
作用:面向街口編程,可以了解對象的交互介面,而不需要瞭解對象所對應的類
類型:是一引用類型
常量:接口的常量具有static, final的特性
表示法: ``` class Person extends Animal implements Runner,Swimmer,Flyable { public void run() { System.out.println("run"); } }
```
總結:
本週談到類、方法、字段的組合,還有控制符的特性,分成訪問與非訪問的層面, 兒學習過程中,總是覺得就把特性記下來就好,但是在看範例代碼時,才發現自己只是自以為懂罷了,像是this的概念,重載的概念、super的應用,還有最頭痛的Interface, 這個部分,我覺得還得再看很多遍,直到能夠能手寫出code ,我覺得才算真正的瞭解。
透由代碼來加上強記下理論的知識點,兩者不可缺。
代碼第一次先求output、抄寫一遍、自己想辦法寫出來。
Last updated
Was this helpful?