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

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

在Java中,‘instanceof’操作符是用來做什么的?

在Java中,‘instanceof’操作符是用來做什么的?

達(dá)令說 2019-06-21 17:34:50
在Java中,‘instanceof’操作符是用來做什么的?什么是instanceof接線員?我見過這樣的東西if (source instanceof Button) {     //...} else {     //...}但這一切對我來說都沒有意義。我已經(jīng)做了我的研究,但只提出了例子,沒有任何解釋。
查看完整描述

3 回答

?
神不在的星期二

TA貢獻(xiàn)1963條經(jīng)驗(yàn) 獲得超6個(gè)贊

instanceof關(guān)鍵字是二元算子用于測試對象(實(shí)例)是給定類型的子類型。

想象一下:

interface Domestic {}class Animal {}class Dog extends Animal implements Domestic {}class Cat extends Animal implements Domestic {}

想象一下dog 對象,與Object dog = new Dog(),然后:

dog instanceof Domestic // true - Dog implements Domesticdog instanceof Animal   // true - Dog extends Animaldog instanceof Dog    
  // true - Dog is Dogdog instanceof Object   // true - Object is the parent type of all objects

然而,與Object animal = new Animal();,

animal instanceof Dog // false

因?yàn)?/trans>AnimalDog可能也沒那么“精致”。

和,

dog instanceof Cat // does not even compile!

這是因?yàn)?/trans>Dog既不是子類型也不是超級類型。Cat,而且它也沒有實(shí)現(xiàn)它。

請注意,用于dog以上類型Object..這是為了顯示instanceof運(yùn)行時(shí)操作,并將我們帶到一個(gè)/用例:根據(jù)運(yùn)行時(shí)的對象類型作出不同的反應(yīng).

要注意的事情:expressionThatIsNull instanceof T對所有類型都是false。T.

編碼愉快。


查看完整回答
反對 回復(fù) 2019-06-21
?
當(dāng)年話下

TA貢獻(xiàn)1890條經(jīng)驗(yàn) 獲得超9個(gè)贊

如果表達(dá)式的左側(cè)為實(shí)例右側(cè)的類名。

這樣想吧。說你街區(qū)里所有的房子都是用相同的藍(lán)圖建造的。十個(gè)房子(物體),一套藍(lán)圖(類別定義)。

instanceof是一個(gè)有用的工具,當(dāng)你有一個(gè)對象的集合,而你不知道它們是什么。假設(shè)您有一個(gè)窗體上的控件集合。您希望讀取任何復(fù)選框的選中狀態(tài),但不能要求普通的舊對象提供其選中狀態(tài)。相反,您將看到每個(gè)對象是否是一個(gè)復(fù)選框,如果是,則將其轉(zhuǎn)換為復(fù)選框并檢查其屬性。

if (obj instanceof Checkbox){
    Checkbox cb = (Checkbox)obj;
    boolean state = cb.getState();}


查看完整回答
反對 回復(fù) 2019-06-21
?
桃花長相依

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

如上文所述本站:

這個(gè)instanceof運(yùn)算符可用于測試對象是否為特定類型.

if (objectReference instanceof type)

一個(gè)簡單的例子:

String s = "Hello World!"return s instanceof String;//result --> true

然而,申請instanceof在空引用變量/表達(dá)式上返回false。

String s = null;return s instanceof String;//result --> false

由于子類是其超類的“類型”,所以可以使用instanceof來驗(yàn)證這個(gè).。

class Parent {
    public Parent() {}}class Child extends Parent {
    public Child() {
        super();
    }}public class Main {
    public static void main(String[] args) {
        Child child = new Child();
        System.out.println( child instanceof Parent );
    }}//result --> true

我希望這能幫到你!


查看完整回答
反對 回復(fù) 2019-06-21
  • 3 回答
  • 0 關(guān)注
  • 648 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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