構造方法,成員變數區域性變數區別,this關鍵字

2021-09-26 14:48:21 字數 1559 閱讀 5286

構造方法

1.什麼是構造方法(建構函式,構造器)

就是在類例項化物件時執行的一種特殊的方法

2.為什麼需要構造方法

一般情況下,構造方法合適為物件的屬性賦初值

3.如何編寫構造方法

格式public 《類名》()

1.構造方法不寫返回值型別

2.構造方法的方法名必須和類名相同 //首字母大寫

(唯一乙個可以以大寫字母開頭的方法)

3.構造方法不能使用物件呼叫,只在例項化物件時執行

new 《類名》(引數列表); //呼叫構造方法

4.構造方法注意事項

4.1如果乙個類中沒有編寫構造方法,那麼系統會自動為這個類生成乙個無參構造

4.2如果類中編寫了構造方法,那麼系統就不會生成無參構造了

4.3構造方法可以過載

成員變數和區域性變數

1.類中定義的變數(屬性)就是成員變數

2.方法中定義的變數,或形式引數就是區域性變數

3.區別

3.1作用域不同

成員變數可以再當前類的任何方法中使用

區域性變數只能在宣告他的方法中使用

3.2初始值不同

成員變數有初始預設值

(0\0.0\null\false)

區域性變數沒有初始值

3.3優先順序不同

區域性變數》成員變數

成員變數和區域性變數同名時區域性變數具有更高的優先順序

如果想訪問成員變數需要在變數名前加this.

this關鍵字

1.什麼是this

this是物件在方法中對自身的引用

2.用法

this.《屬性》

區分成員變數和區域性變數

this.《方法》()

不常用

this()

呼叫當前類的構造必須編寫在構造方法中的第一行

(0)方法自己調自己或者互相迴圈呼叫稱之為"遞迴"呼叫

引用資料型別

1.引用資料型別的特徵(string,自造類,陣列)

變數儲存的是這個物件的引用

在方法中

變數的引用儲存在棧中

物件儲存在堆中

dog d=new dog(「旺財」,3,17.6,「金毛」);

dog dd=d;

dd.name=「虧財」;

system.out.println(d.name);

2.引用資料型別陣列

dog dogs=new dog[4];

預設值:;

引用資料型別陣列元素的預設值是null

3.關於null和null指標異常

3.1null是個常量表示當前引用沒有引用任何物件

當這樣的null物件打.呼叫屬性或方法時,會出現null指標異常

3.2通常情況下

如果在遍歷引用型別陣列時

發生null指標異常

那麼需要在元素呼叫屬性或方法前

加入乙個if判斷

多維陣列(二維陣列)

1.普通陣列中,陣列元素是具體資料

二維陣列中,陣列元素又是陣列

成員變數區域性變數建構函式

類體由2部分構成 一 變數的定義 成員變數 全域性變數的俗稱 區域性變數,只在定義它的方法中有效 二 方法的定義 乙個類中可以有多個方法 什麼是區域性,方法內部,塊內部都是區域性,執行指令退出那個區域性,區域性變數自動清除 成員變數 作為類的成員而存在,直接存在於類中。所有類的成員變數可以通過thi...

成員變數和區域性變數區別

變數根據定義位置的不同,我們給變數起了不同的名字。如下圖所示 在類中的位置不同 重點 成員變數 類中,方法外 區域性變數 方法中或者方法宣告上 形式引數 作用範圍不一樣 重點 成員變數 類中 區域性變數 方法中 初始化值的不同 重點 成員變數 有預設值 區域性變數 沒有預設值。必須先定義,賦值,最後...

成員變數和區域性變數區別

成員變數 直接宣告在類內部的變數稱為成員變數 member variables 宣告成員變數的語法格式 修飾符 資料型別 變數名 值 public static final double pi 3.14 區域性變數 只能宣告在方法 包括形參列表 或者程式塊中 使用前,必須顯式地為區域性變數初始化 不...