亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

java中protected關鍵字的用法

發布時間:2020-06-02 19:27:51 來源:億速云 閱讀:360 作者:Leah 欄目:編程語言

這篇文章運用了實例代碼展示java中protected關鍵字的用法,代碼非常詳細,可供感興趣的小伙伴們參考借鑒,希望對大家有所幫助。

首先我們來看一下如下兩個示例:

示例一:

//包A中有一個動物類  
package testa;  
public class Animal {  
    protected void crowl(String c){  
        System.out.println(c);  
    }  
}

示例二:

package testb;
import testa.Animal;
 
class Cat extends Animal 
{  
    
}  
public class Rat extends Animal{  
    public void crowl(){  
              this.crowl("zhi zhi"); //沒有問題,繼承了Animal中的protected方法——crowl(String)  
              Animal ani=new Animal();
              ani.crowl("animail jiaojiao"); //wrong, The method crowl(String) from the type Animal is not visible 
              Cat cat=new Cat();  
              cat.crowl("miao miao"); //wrong, The method crowl(String) from the type Animal is not visible  
    }  
}

既然,貓和鼠都繼承了動物類,那么在鼠類的作用范圍內,看不到貓所繼承的crowl()方法呢?

問題解答:

protected受訪問保護規則是很微妙的。雖然protected域對所有子類都可見。但是有一點很重要,不同包時,子類只能在自己的作用范圍內訪問自己繼承的那個父類protected域,而無法到訪問別的子類(同父類的親兄弟)所繼承的protected域和父類對象的protected域ani.crow1()。 說白了就是:老鼠只能叫"zhi,zhi"。即使他能看見貓(可以在自己的作用域內創建一個cat對象),也永遠無法學會貓叫。

也就是說,cat所繼承的crowl方法在cat類作用范圍內可見。但在rat類作用范圍內不可見,即使rat,cat是親兄弟也不行。

另外: 這就是為什么我們在用clone方法的時候不能簡單的直接將對象aObject.clone()出來的原因了。而需要在aObject.bObject=(Bobject)this.bObject.clone();

總結:

當B extends A的時候,在子類B的作用范圍內,只能調用本子類B定義的對象的protected方法(該方法從父類A中繼承而來)。而不能調用其他A類(A 本身和從A繼承)對象的protected方法。

看完上述內容,你們對java中的protected關鍵字有進一步的了解嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

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

AI

延庆县| 惠水县| 潍坊市| 西盟| 太原市| 乌鲁木齐市| 临夏县| 泾川县| 鹿邑县| 双城市| 台江县| 邢台市| 松滋市| 称多县| 无为县| 黄石市| 堆龙德庆县| 霸州市| 郑州市| 嘉鱼县| 西充县| 平武县| 临沧市| 普格县| 高唐县| 德化县| 全南县| 繁昌县| 奉化市| 教育| 郯城县| 怀集县| 阿拉善左旗| 新河县| 竹山县| 北宁市| 会东县| 龙口市| 陆川县| 康马县| 佳木斯市|