黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java面試題必知,常見Java繼承面試題

Java面試題必知,常見Java繼承面試題

更新時間:2020-08-05 15:47:43 來源:動力節點 瀏覽3437次

下面這段代碼的輸出結果是什么?

public class Test {
    public static void main(String[] args)  {
        new Circle();
    }
}
 
class Draw {
     
    public Draw(String type) {
        System.out.println(type+" draw constructor");
    }
}
 
class Shape {
    private Draw draw = new Draw("shape");
     
    public Shape(){
        System.out.println("shape constructor");
    }
}
 
class Circle extends Shape {
    private Draw draw = new Draw("circle");
    public Circle() {
        System.out.println("circle constructor");
    }
}


運行結果
shape draw constructor
shape constructor
circle draw constructor
circle constructor

父類的構造器調用以及初始化過程一定在子類的前面。

由于Circle類的父類是Shape類,所以Shape類先進行初始化,然后再執行Shape類的構造器。接著才是對子類Circle進行初始化,最后執行Circle的構造器。

2.下面這段代碼的輸出結果是什么?

public class Test {
    public static void main(String[] args)  {
        Shape shape = new Circle();
        System.out.println(shape.name);
        shape.printType();
        shape.printName();
    }
}
 
class Shape {
    public String name = "shape";
     
    public Shape(){
        System.out.println("shape constructor");
    }
     
    public void printType() {
        System.out.println("this is shape");
    }
     
    public static void printName() {
        System.out.println("shape");
    }
}
 
class Circle extends Shape {
    public String name = "circle";
     
    public Circle() {
        System.out.println("circle constructor");
    }
     
    public void printType() {
        System.out.println("this is circle");
    }
     
    public static void printName() {
        System.out.println("circle");
    }
}


運行結果
shape constructor
circle constructor
shape
this is circle
shape
1.對于這個例子,靜態綁定的過程是:java文件編譯時,編譯器檢查出引用shape的靜態類型是Shape類,由于將printName()方法和父類Father關聯起來。也就是說,程序運行前編譯器是無法檢查出引用shape的動態類型的,所以會直接調用靜態類型中對應的方法。

2.覆蓋只針對非靜態方法,而隱藏是針對成員變量和靜態方法的。

3.覆蓋和隱藏之間的區別是:覆蓋受RTTI約束的,而隱藏卻不受該約束。也就是說只有覆蓋方法才會進行動態綁定,而隱藏是不會發生動態綁定的。

Java面試題必知,常見Java繼承面試題

以上就是動力節點java培訓機構的小編針對“Java面試題必知,常見Java繼承面試題”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 激情五月综合 | 黄色片免费观看视频 | 亚洲国产成人九九综合 | 91精品视频在线观看免费 | 天天操天天摸天天射 | 野外三级国产在线观看 | 欧美日韩国产乱了伦 | 国外成人免费高清激情视频 | 护士bd| 黄网址在线| 欧美1页 | 亚洲综合久久一本伊伊区 | 美女黄频a美女大全免费皮 美女黄免费网站 | 成人无遮挡免费网站视频在线观看 | 日日狠狠的日日日日 | 99久久中文字幕伊人 | 日本深夜18免费看片高清网 | 日韩伦理亚洲欧美在线一区 | 99国产超薄丝袜足j在线观看 | 亚洲激情视频图片 | 婷婷免费在线 | 性欧美巨大极品videos | 一级做一级爱a做片性视频视频 | 亚洲视频欧美视频 | 在线亚洲激情 | 欧美日韩在线影院 | 天堂最新在线资源 | 91久久偷偷做嫩草影院免 | 亚洲欧美日韩中文综合v日本 | 最近2019中文字幕大全7 | 99热视热频这里只有精品 | 性国产videofree另类 | 一级α一级α片免费观看网站 | 精品国产91久久久久久久 | 国产papa| 伊人热人久久中文字幕 | 国产一区二区三区欧美精品 | 日本人成年视频在线观看 | 狠狠澡夜夜澡人人爽 | 91丝瓜视频 | 香港三级日本三级澳门三级人 |