此篇主要為,在資策會【 Java 】上課筆記,針對基本架構【 實體化 】【建立物件】【變數】【方法】寫法架構的筆記
可先閱讀基本架構(1)。
本文用到的名詞:易混名詞
不同書籍見到的名詞整理:
區域變數(local variable)
類別變數(class/static variable):亦可稱為 靜態變數
物件變數(instance variable):亦可稱為 實例變數、實體變數
類別方法(class/static method):亦可稱為 類別函數、靜態方法
物件方法(instance method):亦可稱為 實例函數、實體方法
實體化
由於類別(class)只是一個模板,因此必須利用它來建立屬於該類別的物件(object)(亦實體化物件),而新建好的物件,也具有該類別所擁有的屬性與方法。
宣告與建立物件:類別名稱 變數 = new 類別名稱();
變數的分類與存取範圍
變數的分類是依據宣告的位子:
區域變數(local variable):
1.宣告在方法或建構子內
2.不能有修飾詞
3.未初始化會編譯錯誤
全域變數(global variable):宣告在class與方法中間
1.物件變數(instance variable):跟類別共存亡,類別被new了他才會出現
2.類別變數(class/static variable)
生命長度:
區域變數 < 物件變數 < 類別變數
物件變數、類別變數
當建立物件時,並利用物件來設定變數的值,就叫物件變數(instance variable)。當產生2個物件,2個物件的變數會配置於不同的記憶體區塊內。
而類別變數(class variable)是提供所有的物件共享,每一個物件的類別變數均相同,當變更某個物件的類別變數,則其他物件的類別變數也會改變。
物件方法、類別方法
如同物件變數,物件方法(instance method)需要實體化物件去呼叫它,而類別方法(class method)可直接呼叫,也可以透過實體物件去呼叫。