溫馨提示×

溫馨提示×

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

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

Java中的instancesof如何使用

發(fā)布時間:2022-02-23 14:50:49 來源:億速云 閱讀:139 作者:iii 欄目:開發(fā)技術(shù)

這篇“Java中的instancesof如何使用”文章的知識點大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Java中的instancesof如何使用”文章吧。

instanceof

1. instanceof 是Java中的一個關(guān)鍵字,Java中的關(guān)鍵子都是小寫。
2. instanceof關(guān)鍵字的作用是判斷左邊對象是否是右邊類(這里有很多人說是對象,所以注意這里是類,并不是對象)的實例(通俗易懂的說就是:子類對象,或者右邊類本身的對象)返回的boolean類型,true和false。

舉個例子:

public class Dome{

	class Perse extends Object{}	
	class Student extends Perse{}

	//這個方法判斷是否是Perse的實例,用instanceof判斷。
	void f(Object o){//Object可以接收任何的類型。
	if(o instanceof Perse)
		System.out.println("你輸入的對象是Perse的實例");
		else
		System.out.println("你輸入的對象不是Perse的實例");

	public static void main(String[] args){
	Dome dome =new Doem();
	Perse perse =new Perse();
	Student student =new Student();
	Object object = new Object();
	dome.f(/*shutdent或者perse以及object*/);
	//結(jié)果:
	//輸入的是student和perse那么instanceof 判斷就會是true,if也就執(zhí)行打印語句System.out.println("你輸入的對象是Perse的實例");
	//那么輸入object自然instanceof判斷就是false。
	原因我們開頭已經(jīng)說的很清楚啦。
	//instanceof關(guān)鍵字的作用是判斷左邊對象是否是右邊對象的實例(通俗易懂的說就是:子類,或者右邊類本身的對象)
	}
}

使用環(huán)境

public class CastingDemo{
	
		public static void displayObject(Object o){
			if(o instanceof Yuan){//判斷是否為圓的對象,不是則往下執(zhí)行判斷else if
				System.out.println("圓的面積為:" + ((Yuan)o).mianJi);//這里(Yuan)Object)防止參數(shù)o是Yuan的子類,此方法獲得面積。
			System.out.println("圓的直徑為:" + ((Yuan)o).zhiJing);//此方法獲得直徑。
			}else if(o instanceof ChangFangXing){
				System.out.println("長方形的面積為:" + ((ChangFangXing)o));
			}
		}
			public static void main(String[ ] args){
			Object yuan =new Yuan(/*半徑:*/ 1 );//Yuan是圓的對象,參數(shù)是半徑,的出圓的面積和直徑。詳細類就不寫啦,理解就行。
			Object changFangXing =new ChangFangXing(/*長寬:*/ 1,1);//ChangFangXing是長方形,參數(shù)是長和寬,的出面積
			//因為是靜態(tài)方法并且在本類直接使用,省略 類名. 
			displayObject(yuan);
			displayObject(changFangXing);
		}
		
}

結(jié)果:圓的面積為:3.1415926
圓的直徑為:2.0
長方形的面積為:1.0

以上就是關(guān)于“Java中的instancesof如何使用”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

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

AI