1. 程式人生 > >java程式設計入門9 類與物件

java程式設計入門9 類與物件

面向物件程式設計三大特性

1.封裝

1)也就是把客觀的事物封裝成抽象的類,並且類可以把自己的屬性方法只讓可信的類和物件操作,對不可信的隱藏內部細節。

2)類通常對客戶隱藏其實現細節。

3)採用封裝的思想保證了類內部資料結構的完整性。

2.繼承

1)派生類(子類)可以通過繼承基類(超類或父類)來擁有基類的所有屬性和行為

3.多型

1)指在一般類中定義的屬性和行為,被特殊類繼承後,可以擁有不同的資料型別或表現出不同的行為,這使得同一個屬性或行為在一般類及其各種特殊類中擁有不同的語義。

2)多型的實現方法包括方法的過載,方法的覆蓋,物件的呼叫。

類的構造方法

1.構造方法的方法名與類名相同,構造方法沒有返回值。

2.構造方法是在使用者建立物件時,有系統自動呼叫執行。

3.如果類中沒有明確定義構造方法,編譯器會自動建立一個不帶引數的預設構造方法。

4.如果類中顯示的定義了構造方法,那麼java編譯器不會再為你定義一個預設的構造器。

類的主方法

1.主方法的形參為陣列。其中args[0]~args[n]分別代表程式的第一個引數到第n個引數,可以使用args.length獲取引數的個數

public static void main(String[] args) {
    System.out.println(args.length);
    for(int i=0;i<args.length;i++) {
        System.out.println(args[i]);
    }
}

2.在Eclipse中設定程式引數的步驟如下

1)在Eclipse中,在包資源管理器中右擊專案名稱,在彈出的快捷選單中選擇Run As/Run Configrations命令,彈出Run Configrations對話方塊。

2)在Run Configurations對話方塊中選擇Arguments選項卡,在Program arguments文字框中輸入相應的引數,每個引數按Enter鍵隔開

物件的銷燬

1.每一個物件都有生命週期,當物件的生命週期結束時,分配給該物件的記憶體地址將會被回收。在其他語言中需要手動回收廢棄的物件,但是java擁有一套完整的垃圾回收機制。

2.物件在以下兩種情況會被java虛擬機器視為垃圾

1)物件引用超過其作用範圍

2)物件被賦值為null

3.雖然垃圾回收機制已經很完善,但垃圾回收器只能回收那些有new操作符建立的物件。如果某些物件不是通過new操作符在記憶體中獲取一塊記憶體區域,這種物件可能不能被垃圾回收機制所識別,所以在java中提供了一個finalize()方法。

4.finalize()方法是Object類的方法,被宣告為protected,使用者可以在自己的類中定義這個方法。如果使用者在類中定義了finalize()方法,在垃圾回收時會首先呼叫該方法,在下一次垃圾回收動作發生時,才能真正回收被物件佔用的記憶體。

5.垃圾回收或finalize()方法不保證一定會發生,如java虛擬機器記憶體損耗待盡時,它是不會執行垃圾回收的。

6.java提供了System.gc()方法強制啟動垃圾回收器。

 

2018-12-07