91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

JAVA中如何實現父類與子類轉換

發布時間:2020-07-23 09:37:08 來源:億速云 閱讀:191 作者:小豬 欄目:編程語言

小編這次要給大家分享的是JAVA中如何實現父類與子類轉換,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

JAVA語言中, 對象變量是多態的

每個子類對象都算是父類對象(子類對象可以當作父類變量所引用)

那反過來可不可以呢

答案是取決于父類變量引用的是誰

如果父類變量引用的是子類對象的實例, 可以通過強轉被子類變量引用

如果父類變量引用的是父類對象的實例,則不能被為子類變量引用

上代碼舉例子(本篇一直用這兩個類舉例子,main測試不同):

一個Father類

package test;
 
public class Father 
{
	int fatherA;
	Father(int a)
	{
		fatherA=a;
	}
}

一個Son類

package test;
 
public class Son extends Father 
{
	int sonB;
	Son(int a,int b)
	{
		super(a);
		sonB=b;
	}
	
}

把子類對象賦給父類變量:

package test;
 
public class MainTest 
{
 
	public static void main(String[] args) 
	{
		Son son1=new Son(1, 2);
		Father father1=son1;	//子類對象被父類變量引用
		System.out.println(father1.fatherA);
	}
 
}

結果: 賦值成功!JAVA中如何實現父類與子類轉換

把父類引用賦值給子類變量分兩種情況:

1.父類引用的是子類對象:

package test;
 
public class MainTest 
{
 
	public static void main(String[] args) 
	{
		Father father2=new Son(1, 2);	//父類引用了子類對象的實例
		Son son2=(Son)father2;
		System.out.println(son2.sonB);
	}
 
}

結果:轉換成功! 

JAVA中如何實現父類與子類轉換 

這里注意即使引用的是子類實例轉換成子類也需要強轉, 否則會報錯

2.父類引用的是父類的實例:

package test;
 
public class MainTest 
{
 
	public static void main(String[] args) 
	{
		Father father2=new Father(1);	//父類引用了子類對象的實例
		Son son2=(Son)father2;
		System.out.println(son2.sonB);
	}
 
}

結果:失敗!

JAVA中如何實現父類與子類轉換

看完這篇關于JAVA中如何實現父類與子類轉換的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。

向AI問一下細節

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

AI

靖边县| 乌什县| 都安| 永吉县| 容城县| 和田县| 迁西县| 龙里县| 双桥区| 瑞安市| 淳化县| 安福县| 阿拉善盟| 叶城县| 镇沅| 曲周县| 平度市| 三穗县| 额济纳旗| 汉川市| 泽库县| 顺义区| 滁州市| 静宁县| 财经| 昌图县| 界首市| 潞城市| 长白| 宜君县| 离岛区| 赫章县| 新兴县| 通城县| 大名县| 宁强县| 鄱阳县| 锡林浩特市| 乌拉特后旗| 合水县| 青田县|