小伙的java之旅(3) 物件導向

2021-07-24 18:10:55 字數 1196 閱讀 2744

這周了解一部分物件導向的知識。

物件導向的本質

以類的方式組織**,以物件的方式組織資料。
物件導向的思維

ooa(object-oriented analysis 物件導向分析方法 )

ood(object-oriented design 物件導向設計)

類與物件

物件是以類為模板的,乙個類可以抽象出很多物件。

物件:是具體的事物。(new 後面是物件)。

類:是對物件的抽象。(class 後面是類)。類是由屬性和方法構成。

記憶體機制

例項變數系統可自動初始化,區域性變數必須由開發者自己初始化。

棧:自動分配連續的空間,後進先出。放置區域性變數。

堆:自動分配不連續的空間。放置建立(new)出的物件。

方法區:位於堆中,是堆的一部分。放置類的資訊(**),static變數,常量池(字串常量等)。

常量池有共享的功能。

構造方法

方法名必須與類名一致。

如果我們沒有定義構造方法,系統則會自動定義乙個無參的建構函式。如果已定義則編譯器不會自動定義。

作用:構造類的物件,經常也用來初始化物件的屬性。

方法過載

指乙個類中可以定義有相同的名字,但引數不同的多個方法。呼叫時,會根據不同的參數列選擇對應的方法。

過載:同乙個類,同乙個方法名。引數列表不同(型別,個數,順序不同)

構造方法也可以過載。

static關鍵字

在類中,用static宣告的成員變數為靜態變數,或者叫類屬性,類變數。

在類方法中,只能呼叫類變數和類方法。

static變數與成員變數

static變數(從屬於類),在方法區放置。

成員變數(從屬於物件),在堆中放置。

類只能呼叫類的,物件可以呼叫自己的也可以呼叫類的。

java(3) 物件導向

1.super關鍵字 使用super關鍵字呼叫父類的成員變數和成員方法。具體格式 super.成員變數 super.成員方法 引數1,引數2.使用super關鍵字呼叫父類的構造方法。具體格式 super 引數1,引數2.通過super呼叫父類構造方法的 必須位於子類構造方法的第一行,並且只能出現一次...

小伙的java之旅 GOF23 單例模式

核心作用 保證乙個類只有乙個例項,並且提供乙個訪問該例項的全域性訪問點。餓漢式 單利模式 餓漢式載入 餓漢單例模式 中,static變數會在類裝載時初始化,此時也不會涉及多個執行緒物件訪問物件的問題。虛擬機器保證只會裝載一次該類,肯定不會發生併發訪問的問題。因此,可以省略synchronized關鍵...

物件導向學習之旅(2)

類的建構函式和析構函式,有什麼關係,分別是如何使用的?建構函式和析構函式 是類中比較特殊的兩種成員函式,主要用來對物件進行初始化和 物件資源。一般來說,物件的生命週期從建構函式開始,以析構函式結束。類中方法的過載和方法重寫,有什麼關係,分別是如何使用的?重寫 執行時。過載 編譯時 方法的重寫 1.父...