super 與 this 關鍵字(Java)
super 與 this 關鍵字
super關鍵字:我們可以通過super關鍵字來實現對父類成員的訪問,用來引用當前物件的父類。
this關鍵字:指向自己的引用。
例項
class Animal { void eat() { System.out.println("animal : eat"); } } class Dog extends Animal { void eat() { System.out.println("dog : eat"); } void eatTest() { this.eat(); // this 呼叫自己的方法 super.eat(); // super 呼叫父類方法 } } public class Test { public static void main(String[] args) { Animal a = new Animal(); a.eat(); Dog d = new Dog(); d.eatTest(); } }
輸出結果為:
animal : eat dog : eat animal : eat
相關推薦
super 與 this 關鍵字(Java)
super 與 this 關鍵字 super關鍵字:我們可以通過super關鍵字來實現對父類成員的訪問,用來引用當前物件的父類。 this關鍵字:指向自己的引用。 例項 class Animal { void eat() { System.out.println("a
super與this關鍵字的用法與區別
介紹: this:當前物件 super:直接父類物件 this():當前類的無參構造方法,也可以指定有參的如:this(a) super():直接父類的無參構造方法,也可以指定有參的如:super(a)
Java基礎-super關鍵字與this關鍵字
1 class Human3 { 2 3 private String name; 4 private int age; 5 6 public Human3(String name) { 7 super(); 8 this.na
Java中的super關鍵字與this關鍵字
super關鍵字: super關鍵字代表了父類空間的引用。 super關鍵字的 作用: 1. 子父類存在著同名的成員時,在子類中預設是訪問子類的成員,可以通過super關鍵字指定訪問父類的成員。 2. 建立子類物件時,預設會先呼叫父類無參
Java中super關鍵字、super關鍵字與this關鍵字的區別
1 super關鍵字 1.1 super用於方法 1.1.1 用於構造方法 當子類呼叫父類無參構造時,super可寫可不寫,表示呼叫父類的無參構造! 當子類呼叫父類有參構造時,super(引數列表)必須要寫,要告訴編輯器呼叫的是哪個有參構造!
super關鍵字與this關鍵字
目的 方法 調用構造方法 col 命名 出現一次 參數 語法 父類 super關鍵字語法: super.成員變量 super.成員方法([參數1,參數2]) super調用父類構造方法的代碼必須位於子類構造方法的第一行,並且只能出現一次。 this關鍵字: 通過this關鍵
對this的理解,關鍵字super與this的區別
可用 父類 子類構造方法 屬性 方式 構造 使用方法 並且 this this關鍵字: 1、調用本類中的屬性(成員變量); 2、調用本類中的方法; 3、調用本類中的其他構造方法,調用時要放在構造方法的首行。 註意this只在非靜態方法中使用,靜態方法和靜態代碼不能出現thi
thinking in java (四) ----- static與this關鍵字
static static代表什麼 static表示“全域性”或者“靜態”的意思,用來修飾成員變數或者方法,也可以修飾程式碼塊。被static修飾的成員會在類載入的時候進行初始化與空間分配,被設定為靜態後,成員會被存放在靜態儲存空間,全域性共享一個值。因此訪問被st
Java構造方法與this關鍵字
1.構造方法: package com.java16; public class java1010_16 { public String name; public int age; //無參構造,如果寫了有引數構造的方法,那麼系統不會自動
java構造方法,以及super、this關鍵字、隱式呼叫、顯式呼叫
首先需要明白的是,當建立java物件時,程式總是依次呼叫每個父類的非靜態初始化塊、父類構造器(總是從Object開始)執行初始化,最後才呼叫該類的非靜態初始化塊、構造器執行初始化。 為了說明問題,這裡貼出一個小例子: class Parent{static{System.
java中super()與this()的區別
This():當前類的物件,super父類物件, 所有的資源都可以訪問。 Super():在子類訪問父類的成員和行為,必須受類繼承規則的約束,在建構函式中,如果第一行沒有寫super(),編譯器會自動插入.但是如果父類沒有不帶引數的建構函式,或這個函式被私有化了(用priva
java的super和this關鍵字用法總結
------super關鍵字------ super用途:在子類中訪問超類“被隱藏的成員變數(無論是否靜態)和靜態方法”以及“被重寫的例項方法”。這裡的超類必須是“直接超類”,即子類之上最近的超類。 super的用法: ①在子類構造方法
關於java中super與this的簡單理解
最近在學習java,遇到了關於super的一些問題,剛開始看到super是沒有一點概念,自己找了資料便研究了一下: 在Java中,有時會遇到子類中的成員變數或方法與父類中的成員變數或方法同名。因為子類中的成員變數或方法名優先順序高,所以子類中的同名成員變數或方
封裝、構造方法、private、Static與this關鍵字、main()_Day07
形參 調用構造 查找 logs code 屬性 too person 步驟 1:成員變量和局部變量的區別(理解) (1)定義位置區別: 成員變量:定義在類中,方法外。 局部變量:定義在方法中,或者方法聲明上。
繼承、super與this的區別
繼承 說到繼承就想到了我們常說的子承父業,java中的繼承(extends)也就是運用了這種思想,這樣可以減少程式碼的重複率以及方便維護。 super與this的區別 super this 父類物件的引用
super 與 final 關鍵字
super關鍵字用來訪問父類成員 super.父類變數名; super.父類方法名(); super(); //呼叫父類的構造方法,且必須位於子類構造方法的第一行 在例項化子類的時候一定會呼叫父類的構造方法,如果在子類中沒有指明呼叫哪一個父類構造方法,那麼程式會自動呼叫父類的預設構造方法,如
Super與this的區別
1 class Base { 2 3 Base() { 4 5 System.out.println("Base"); 6 7 } 8 9 }10 11 12 13 public class Checket extends Base {14 15 Check
super與this的比較
ava 同時 包括 super() www. 實參 成員函數 blog this調用 super(參數):調用基類中的某一個構造函數(應該為構造函數中的第一條語句) this(參數):調用本類中另一種形成的構造函數(應該為構造函數中的第一條語句) super: 它引用當前對
構造方法與 This關鍵字的特性與作用
成員 實例 oid 重載 new ron ati pri 內部 1.構造方法 構造方法是一種特殊的方法,專門用於構造/實例化對象。 構造方法根據是否有參數分為無參構造方法和有參構造方法。 1.1無參構造方法 無參構造方法就是構造方法沒有任何參數。無參構造方法在創建(
java構造器與this,super關鍵字介紹
在Java與C語言的程式設計中,必須對建立的物件進行物件初始化,Java採用C++所引入的構造器對物件進行初始化,這是一個在建立物件時被自動呼叫的特殊方法。 注意:構造器的名稱必須與類名完全相同 class Constructor{