1. 程式人生 > >java基礎06_引用型別用法總結_debug_final_內部類

java基礎06_引用型別用法總結_debug_final_內部類

一、斷點除錯:1.在需要暫停的程式碼的左側行號的位置單擊一下,會顯示一個紅色的圓圈,表示斷點位置。2.點選“Debug執行”–程式碼右鍵–>Debug "main…"3.執行起來後在斷點處會暫停;4.單步除錯:F7(單步執行(一行一行執行),遇到方法呼叫,進入方法體) F8(單步執行,遇到方法呼叫,不進入方法體) shift + F7(跳出方法呼叫) shift + F8(結束單步模式,程式碼會繼續向下執行,直至下一個斷點或者程式結束) 1. final關鍵字

1).final:表示“最終的”。 2).它可以修飾:(4種) 1).區域性變數:表示變數為“常量”–表示其“值”/“引用”不能被修改; final 基本型別:值不能被修改; final 引用型別:引用不能被修改; 1. 成員變數:表示為“常量”–其“值”/“引用”不能被修改; 2. 成員方法:表示“最終方法”–不能被“重寫”(可以被繼承) 3. 類:表示“最終類”–不能被“繼承”-- 太監類

三、訪問許可權修飾符 1).什麼是“訪問許可權修飾符”:一個專案下分為很多的“包”,“包”下有很多的類,這些類之間是可以互訪的,但也可以進行限制–訪問許可權修飾符。 2).訪問許可權修飾符的作用: 1).限制不同包下的類之間的訪問; 2).限制不同包下的類的成員的訪問許可權; 3).可以修飾: A).類: 1).public(公有):所有包下的所有類都可以訪問。 2).什麼都不寫(預設):只能被同包下的類訪問; B).成員(成員變數、成員方法、構造方法、內部類): 1).public(公有):可以被所有其它類訪問; 2).protected(受保護):只能被同包下的其它類訪問;在包外子類可以訪問。 3).什麼都不寫(預設):只能被同包下的其它類訪問; 4).private(私有):只能被本類內部訪問。四、內部類1.成員內部類1).內部類作為“外部類”的成員,可以直接訪問外部類的成員,包括私有成員;成員內部類的訪問方式: 方式一:在外部類提供一個方法建立內部類的物件進行訪問。 方式2二:在其他類直接建立內部類的物件。格式:外部類.內部類 變數名 = new 外部類().new 內部類(); 注意: 如果是一個靜態內部類,那麼在其他類建立 的格式: 外部類.內部類 變數名 = new 外部類.內部類();內部類的好處:內部類可以直接訪問外部類的所有成員。 內部類要注意的細節: 1. 如果外部類與內部類存在同名的成員變數時,在內部類中預設情況下是訪問內部類的成員變數。 可以通過"外部類.this.成員變數名" 指定訪問外部類的 成員。 2. 私有的成員內部類只能在外部類提供一個方法建立內部類的物件進行訪問,不能在其他類建立物件了。 //3. 成員內部類一旦出現了靜態的成員,那麼該類也必須 使用static修飾。2.區域性內部類:在一個類 的方法內部定義另外一個類,那麼另外一個類就稱作為區域性內部類。區域性內部類要注意的細節: 1. 如果區域性 內部類訪問了一個區域性變數,那麼該區域性變數必須使用final修飾、3.匿名區域性內部類:沒有名字的區域性內部類 注意:匿名區域性內部類必須繼承某個外部類或者實現介面,是內部類的簡化寫法。它的本質是一個 帶具體實現的 父類或者父介面的 匿名的 子類物件。開發中,最常用到的內部類就是匿名內部類了。以介面舉例,當你使用一個介面時,似乎得做如下幾步操作,1. 定義子類2. 重寫介面中的方法3. 建立子類物件4. 呼叫重寫後的方法我們的目的,最終只是為了呼叫方法,匿名內部類把以上四步合成一步。通常在方法的形式引數是介面或者抽象類時,也可以將匿名內部類作為引數傳遞。 1. 引用型別用法總結

1. .類做為成員變數:

當一個類是另一個類的組成,類可以做成員變數。例如:球員類和球隊類,球員與球隊之間沒有繼承關係,球員只是球隊的一部分,球員類可以作為球隊的成員變數。 1. .類作為方法形參和返回值:

1. .介面作為成員變數:

實際上操作的都是介面的子類物件; 1. 介面作為方法的形參和返回值

實際上操作的都是介面的子類物件;