欧美激情网站,特级一级全黄毛片免费,欧美亚洲视频一区,国产高清在线播放免费观看,欧美日韩中文国产,欧美日韩操

為什么Java中類的成員變量不能被重寫(xiě)?

這篇文章討論了Java面向?qū)ο蟾拍钪幸粋(gè)基本的概念--Field Hiding(成員變量隱藏)

成員變量在Java中能夠被重寫(xiě)么?
Let’s first take a look at the following example which creates two Sub objects. One is
assigned to a Sub reference, the other is assigned to a Super reference.
我們看下面這個(gè)例子,我們創(chuàng)建了兩個(gè)子對(duì)象,一個(gè)使用的是子對(duì)象的引用,一個(gè)使用的是父對(duì)象的引用。

public class FieldOverriding {
 
    public static void main(String[] args) {
        Sub c1 = new Sub();
        Super c2 = new Sub();
        System.out.println(c1.s);
        System.out.println(c2.s);
 
    }
 
}
 
class Super {
    String s = "Super";
}
 
class Sub extends Super {
    String s = "Sub";
}
程序的輸出結(jié)果是:


Paste_Image.png
按照我們已有的多態(tài)的概念,第二個(gè)應(yīng)該是輸出sub才對(duì),但卻輸出了super。這是為什么呢?

不會(huì)重寫(xiě)成員變量,而是隱藏成員變量
Java文檔中對(duì)隱藏域的定義:

Within a class, a field that has the same name as a field in the superclass hides the superclass’s field, even if their types are different. Within the subclass, the field in the superclass cannot be referenced by its simple name. Instead, the field must be accessed through super. Generally speaking, we don’t recommend hiding fields as it makes code difficult to read.

意思就是:

在一個(gè)類中,子類中的成員變量如果和父類中的成員變量同名,那么即使他們類型不一樣,只要名字一樣。父類中的成員變量都會(huì)被隱藏。在子類中,父類的成員變量不能被簡(jiǎn)單的用引用來(lái)訪問(wèn)。而是,必須從父類的引用獲得父類被隱藏的成員變量,一般來(lái)說(shuō),我們不推薦隱藏成員變量,因?yàn)檫@樣會(huì)使代碼變得難以閱讀。

其實(shí),簡(jiǎn)單來(lái)說(shuō),就是子類不會(huì)去重寫(xiě)覆蓋父類的成員變量,所以成員變量的訪問(wèn)不能像方法一樣使用多態(tài)去訪問(wèn)。

訪問(wèn)隱藏域的方法
就是使用父類的引用類型,那么就可以訪問(wèn)到隱藏域,就像我們例子中的代碼

就是使用類型轉(zhuǎn)換System.out.println(((Super)c1).s);

北大青鳥(niǎo)網(wǎng)上報(bào)名
北大青鳥(niǎo)招生簡(jiǎn)章
主站蜘蛛池模板: 欧美精品免费线视频观看视频| 99久久国产免费福利| 日韩成人综合网| 4h影视| 亚洲激情视频在线播放| 美女被免费网站视频| 成年人在线免费看视频| 欧美成人免费观看国产| 成人免费精品视频| 国产99热在线观看| 第四色男人天堂| 国产小视频免费在线观看| 久久成人永久免费播放| 亚洲第一天堂无码专区| 亚洲午夜色| 影音先锋色先锋| 色视频免费版高清在线观看| 日本www在线视频| 国产免费亚洲| www.中文字幕.com| 亚洲国产精品日韩在线观看| 成年视频xxxxx在线观看| 日产精品一二三四区国产| 亚洲资源在线视频| 嫩草影院久久精品| 男人的天堂黄色| 婷婷视频在线观看| 天天逼网| 影音先锋亚洲资源| 亚洲国产精品久久久久秋霞不卡| 色婷婷亚洲十月十月色天| 国产精品美女久久福利网站| 2021国产精品| 成人激情免费视频| 成人毛片一区二区三区| 黄色免费在线网址| 亚洲国产天堂久久综合2261144| 欧美成免费| 高清在线亚洲精品国产二区| 91精品成人免费国产| 成人欧美日韩视频一区|