中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java關鍵字super和this有那些區別

發布時間:2020-09-09 09:58:33 來源:億速云 閱讀:149 作者:小新 欄目:編程語言

這篇文章主要介紹了java關鍵字super和this有那些區別,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

關鍵字super和this是什么?有什么區別?

this關鍵字

this是java中的保留關鍵字,即我們不能將其用作標識符。

this:代表當前對象,它允許訪問當前類的方法/屬性(包括其自己的私有方法/屬性)。

簡單來說:能訪問操作當前類里面的所有屬性及方法以及父類繼承而來能被訪問修飾符允許的屬性和方法。

示例:

class RR { 
	int a = 10; 
	static int b = 20; 

	void GFG() { 
		this.a = 100; 
		this.b = 600; 
		System.out.println(a); 
		System.out.println(b); 
	} 

	public static void main(String[] args) { 
		new RR().GFG(); 
	} 
}

運行結果:

java關鍵字super和this有那些區別

注:this只能在類的非靜態方法中使用,靜態方法和靜態的代碼塊中絕對不能出現this。

super關鍵字

super是java中的保留關鍵字,即我們不能將其用作標識符。

super代表當前對象類的父類對象部分,用來引用被屏蔽的成員變量和成員方法。允許訪問公共(受保護)的方法或屬性,無法訪問父級的私有方法或屬性。

super不能操作到本類的屬性和方法;能操作到父類的能被父類訪問修飾符允許的屬性和方法,只有當本類中調用被重寫前的效果時使用super.的方法。

使用super的目的是訪問直接父類中被屏蔽的成員,注意是直接父類(就是類之上最近的超類)。

示例:

class Parent { 
	// instance variable 
	int a = 10; 

	// static variable 
	static int b = 20; 
} 
class Base extends Parent { 
	void rr() { 
		System.out.println(super.a); 
		System.out.println(super.b); 
	} 

	public static void main(String[] args) { 
		new Base().rr(); 
	} 
}

運行輸出:

java關鍵字super和this有那些區別

區別總結:

this關鍵字:表示當前對象,也就是當前類對象,調用當前的類成員(變量和方法);

super關鍵字:表示當前類的父類,調用父類的成員(變量和方法);

this.的使用范圍要比super.的范圍更大。

this()與super()的簡單介紹

1、this()和super()都是使用只能使用于構造方法中,

2、this()調用本類的構造,如果括號內有形參,則是調用本類的與之相對應參的構造方法;super()調用父類指定的構造方法,

3、都只能寫在構造方法的第一句;

4、super()可以不寫,在不寫的時候會默認調用父類的無參構造,

5、this()與super()不能共存,兩者只能使用一個。

感謝你能夠認真閱讀完這篇文章,希望小編分享java關鍵字super和this有那些區別內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

肃宁县| 溧阳市| 远安县| 建水县| 丰宁| 大英县| 镇雄县| 茂名市| 建始县| 文水县| 淅川县| 美姑县| 镶黄旗| 于都县| 莫力| 吴忠市| 文水县| 江华| 晋中市| 竹溪县| 建瓯市| 靖西县| 荥阳市| 慈利县| 江口县| 眉山市| 潍坊市| 凌海市| 榆中县| 麦盖提县| 丹棱县| 松滋市| 康乐县| 天镇县| 桦甸市| 太原市| 南城县| 肥乡县| 大余县| 福泉市| 玉树县|