Java從入門到精通第七章(類和對象)學習記錄

類和對象
對象是事物存在的實體,如人、書桌、高樓等。
類就是同一類事物的統稱。類是封裝對象的屬性和行爲的載體,反過來說,具有相同屬性和行爲的一類實體被稱爲類。
在Java中,類中對象的行爲以方法的形式定義的,對象的屬性是以成員變量的形式定義的,所以類包括對象的屬性和方法。
封裝:
面向對象程序設計具有三個特點:封裝性、繼承性、多態性。
封裝是面向對象編程的核心思想。將對象的屬性和行爲封裝起來,載體爲類,類通常對客戶隱藏其實現細節,這是封裝的思想。用戶只需知道應用的功能,不必知道應用是如何工作的。這提高了程序的可維護性。
繼承:
繼承就是子類由父類產生,它繼承了父類的一些特徵,又有一些屬於自己的特徵,如三角形和等邊三角形,等邊三角形由三角形產生,繼承了三角形的一些特徵,又有屬於自己的一些特徵。繼承性主要利用特定對象之間的共同屬性。
多態:
將父類對象應用於子類的特徵就是多態。多態性允許以統一的風格編寫程序,以處理種類繁多的已存在的類及相關類。該統一風格可以由父類來實現,根據父類統一風格的處理,可以實例化子類的對象,日後只要維護和調整父類的方法,這樣降低了維護的難度,節省了時間。
成員變量在定義的時候可以賦初始值,也可以不賦初始值。
在這裏插入圖片描述
類中定義的變量是成員變量,在方法中定義的變量是局部變量
在這裏插入圖片描述
成員變量的有效範圍是在程序還沒結束之前都有效,局部變量的有效範圍是在聲明它的這個方法或者語句中才有效
成員方法就是在類型定義的方法,如
在這裏插入圖片描述
add就是一個成員方法。
權限修飾符:
權限修飾符主要包括public、protected和private


在這裏插入圖片描述
在這裏插入圖片描述
聲明類時不用修飾符,則默認爲protected,假定類的修飾符爲private,而方法的修飾符爲public,則方法的訪問權限爲private,因爲Java語言規定,類的權限設定會約束類成員的權限設定
this關鍵字:
this關鍵字可以代表本類對象的引用,this關鍵字被隱式的用於引用對象的成員變量和方法。
在這裏插入圖片描述
在這裏插入圖片描述
再通過類的對象來調用方法。
類的構造方法:
如果不建立構造方法,編譯器會自動創建一個不帶參數的默認構造方法。構造方法可以是有參數的,也可以是無參數的。
在這裏插入圖片描述
在這裏插入圖片描述
輸出結果:
在這裏插入圖片描述
靜態常量、變量和方法:
static修飾的變量、常量和方法被稱作靜態常量、變量和方法
靜態成員屬於類所有,可以在本類或其他類使用類名和“.”運算符調用靜態成員。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
類的主方法:
主方法是類的入口點,它定義了程序從何處開始;主方法提供丟對程序流向的控制。
在這裏插入圖片描述
主方法的形參爲數組,可以用args.length獲取形參的個數。
對象:
在這裏插入圖片描述
在這裏插入圖片描述
使用new操作符創建一個對象後,可以使用“對象.類成員”來獲取對象的屬性和行爲
在這裏插入圖片描述
對象的比較方式有兩種,分別爲“”運算符與equals()方法,equals()的使用方法:c2.equals(c3);就是c2和c3比較。“”運算符比較的是兩個對象引用的地址是否相等,equals()方法是比較兩個對象引用所指的內容是否相等。
對象的銷燬:(僅做了解)
Java擁有一套完整的垃圾回收機制,用戶不必擔心廢棄的對象佔用內存,垃圾回收器會自動回收無用卻佔用內存的資源。
垃圾:對象引用超出其作用範圍;對象的值爲null;
垃圾回收器只能回收那些由new操作符創建的對象,Java提供了一個finalize()方法,定義這個方法後,在垃圾回收時會首先調用該方法,由於垃圾回收不受人爲控制,finalize()方法也就無法執行,System.gc()方法可以強制啓動垃圾回收器,主動告知垃圾回收器來清理。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章