第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

instanceof怎么使用?

instanceof怎么使用?

慕九州6114518 2016-11-05 13:21:23
查看完整描述

3 回答

已采納
?
破東風(fēng)一路向北

TA貢獻(xiàn)8條經(jīng)驗(yàn) 獲得超5個贊

對象instanceof類名,用來判斷對象是不是該類的對象,是則返回true,不是返回false。

這個關(guān)鍵字比較常用的地方:

? ? ? ? 對象向下轉(zhuǎn)型。首先,發(fā)生向下轉(zhuǎn)型(子類 ?對象名 = (子類)父類對象)關(guān)系前必須發(fā)生向上轉(zhuǎn)型(父類 ?對象名 = ??new 子類)。在一個父類有很多子類的情況下,如果要發(fā)生向下轉(zhuǎn)型,就不知道要轉(zhuǎn)向哪個子類,這時候就用?????????????????????instanceof關(guān)鍵字來判斷該對象到底是哪個子類的對象,然后再強(qiáng)制轉(zhuǎn)型。見如下代碼:

class?A{
????public?void?print(){
????????System.out.println("A....");
????}
}
class?B?extends?A{
?????public?void?print(){
????????System.out.println("A....B");
????}
?????public?void?print1(){
????????System.out.println("B....");
????}
}
class?C?extends?A{
?????public?void?print(){
???????????System.out.println("A....C");
????}
?????public?void?print1(){
????????System.out.println("C....");
????}
}
public?Test{
????public?static?void?main(String[]?args){
????????A?a1?=?new?B();//發(fā)生向上轉(zhuǎn)型:(父類??對象名?=??new?子類)
????????//向上轉(zhuǎn)型的對象能調(diào)用父類的方法,但實(shí)際調(diào)用的是new后面的子類重寫后的方法,但是不能調(diào)用子類獨(dú)有的方法,比如這里B中的print1()方法,要調(diào)用B中的print1()方法,就要發(fā)生向下轉(zhuǎn)型
????????a1.print();
????????//使用instanceof
????????if(a1?instanceof?B){
????????????B?b1?=?(B)?a1;//向下轉(zhuǎn)型
????????????b1.print1();//調(diào)用B中的print1
????????}
??????????if(a1?instanceof?C){
????????????C?c1?=?(B)?a1;//向下轉(zhuǎn)型
????????????c1.print1();//調(diào)用C中的print1
????????}
????}
}

運(yùn)行結(jié)果是:
A....B
B....


查看完整回答
反對 回復(fù) 2016-11-05
?
Tobey_滔

TA貢獻(xiàn)242條經(jīng)驗(yàn) 獲得超128個贊

boolean bool = object instanceof class;

object是你的對象

class是類

查看完整回答
反對 回復(fù) 2016-11-05
  • 3 回答
  • 1 關(guān)注
  • 1459 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號