類的的高階概念

2021-08-27 05:48:12 字數 1563 閱讀 5704

訪問修飾符:用來修飾定義在類中的屬性和行為可以被其他人訪問修飾的符號

本類 同包 不同包

子類 非子類 子類 非子類

private y n n n n

default y y y n n

protected y y y y n

public y y y y y

private私有(只有本類可以訪問)

default 本包(本包中的類)

protected 受保護的(同包中的類和其他包中的子類,都可以訪問)

public 公共的(任何包中的類均可訪問)

封裝功能是組裝和隱藏。

組裝的組成:

1.屬性(變數屬性、常量屬性)

2.行為

隱藏類的成員變數可以成為唯讀或者只寫

類可以對儲存在其成員變數中的內容有乙個整體的控制。

類的使用者不需要知道類是如何儲存資料的。類可以改變乙個成員變數的資料型別,而類的使用者不需要改變其**。

static 修飾的全域性變數叫靜態變數,也叫類變數,類變數的值為所有物件所共享。與物件無關。直接上公升為類的變數。存放在方法區中的資料塊的靜態區域中。非靜態成員變數,必須等待例項化物件之後,才可呼叫,而靜態成員變數,在類載入完成之後,就可以直接呼叫。

public

static

double pi=3.14

static 修飾的方法叫靜態方法,即類方法。類方法只能使用靜態變數,而不能使用非靜態的全域性變數。封裝工具類的封裝方法。同樣與物件無關,直接上公升為類的行為。非靜態方法必須等到例項化物件才可使用,而靜態方法,在類載入之後,就可以直接呼叫。靜態方法中,不能訪問非靜態成員(屬性,也指方法)其原因是:

1、靜態方法在載入時,非靜態屬性,方法還未呼叫。

2、假設可以呼叫,如果存在成千上萬個物件,呼叫的屬性和行為產生所屬問題,無法判斷屬於誰。

public

static

intadd(int a,int b)

該方法是靜態方法,在任何類中均可呼叫。

static修飾的內容存於記憶體的時機是:類載入的時候

static在修飾全域性變數時,一般用於修飾常量,主要目的:節約堆記憶體,將變數定義在靜態區域中,而不是在每個物件的自身。

static在修飾方法時,一般用於修飾工具類的工具方法,比如:math類、arrays類。

static無法修飾建構函式,static修飾的屬性和行為與物件無關,而構造是專門產生物件的。

主要用於在類載入時,做一些前期的工作,比如:檢查資料庫連線是否正確,配置檔案是否存在。在類載入時,就開始執行。

static
例項初始化塊:主要用於初始化成員變數,一般是物件例項化,才會執行,並且是例項一次,執行一次。他執行在建構函式執行**的第3步到第4步之間。可以使用有參構造,替代例項初始化塊。

類的高階概念

封裝 組裝和資訊隱藏 組裝 類的定義就是組裝 屬性 行為 資訊隱藏 訪問修飾符 看修飾符分情況隱藏 方法實現 體現的是呼叫者的資訊被隱藏,呼叫者無需知道方法的具體步驟,只關心效果 功能 的達成 封裝的好處 類的成員變數可以變成唯讀或者只寫 類可以對儲存在其他成員變數中的內容有乙個整體的控制 類的使用...

類的高階概念

訪問修飾符包括以下四種 public 可以被任意類屬性呼叫,範圍最大 protected 受保護 只能被同包或者子類訪問 預設 什麼都不寫 只能被同一包中其他類訪問 private 私有 只能被本類訪問 封裝的好處 可以使資料更加安全,不容易被更改。靜態成員 使用static修飾的類中成員 使用方法...

類的高階特性

被定義為final的物件引用只能指向唯一乙個物件,不可以將它指向其他物件,但是乙個物件的值本身是可以改變的,為了使乙個常量做到真正不可更改,可以將常量宣告為 static final 全域性常量 乙個被定義為private的方法隱式的被指定為 final 型別final類不允許被繼承,不允許被改動 ...