<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • sun認(rèn)證考試:java子對象創(chuàng)建過程

    時間:2024-08-18 08:03:56 SUN認(rèn)證 我要投稿
    • 相關(guān)推薦

    sun認(rèn)證考試:java子對象創(chuàng)建過程

      Java 創(chuàng)建子類對象的過程:

    sun認(rèn)證考試:java子對象創(chuàng)建過程

      public class F511

      {

      private int ff=100;

      protected int m=880;

      F511()

      {

      m=add(8);

      }

      int add(int i){

      return i+m;

      }

      public static void main(String args[]){

      F511 f=new F511();

      System.out.println("f="+f.m);

      S511 s=new S511();

      System.out.println("s="+s.m+" t= "+s.t);

      }

      }

      class S511 extends F511

      {

      protected int ss=111;

      S511(){

      m+=ss;

      t=add(9);

      }

      int add(int i){

      return i*ss;

      }

      }

      大家自己先分析一下運(yùn)算后的結(jié)果,然后在看下面結(jié)果:

      答案是:f=888

      m=111

      通過這個例子可以很好的學(xué)習(xí)到j(luò)ava繼承父類,運(yùn)行的先后順序和機(jī)制。

      現(xiàn)在我添加一下東西到程序中,方便我們分析:

      public class F511

      {

      private int ff=100;

      protected int m=880;

      protected int t=880;

      static int k=0;

      F511()

      {

      System.out.println("this is parents = "+m);

      m=add(8);

      System.out.println("this is parents m=add(8) = "+m);

      }

      int add(int i){

      System.out.println("k= "+k);

      k++;

      return i+m;

      }

      public static void main(String args[]){

      F511 f=new F511();

      System.out.println("f="+f.m);

      S511 s=new S511();

      System.out.println("s="+s.m+" t= "+s.t);

      }

      }

      class S511 extends F511

      {

      protected int ss=111;

      static int j=0;

      S511(){

      System.out.println("this in childe print parents = "+m);

      m+=ss;

      t=add(9);

      }

      int add(int i){

      System.out.println("j= "+j);

      j++;

      System.out.println("ss= "+ss);

      return i*ss;

      }

      }

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

      this is parents = 880

      k= 0

      this is parents m=add(8) = 888

      f=888

      this is parents = 880

      j= 0

      ss= 0

      this is parents m=add(8) = 0

      this in childe print parents = 0

      j= 1

      ss= 111

      s=111 t= 999

      輸出完成 (耗時 0 秒) - 正常終止

      從這里可以看出,子類繼承父類后。在創(chuàng)建子類對象時,首先初始化父類的無參構(gòu)造函數(shù)F511()執(zhí)行其中的方法。由于父類無參構(gòu)造方法中add()方法被子類重寫了,因此父類調(diào)用子類的add()方法,這就是為什么會輸出j=0,又由于父類中沒有ss變量,所以ss默認(rèn)就為0.所以父類初始化后,m=0了。然后才在初始化子類無參構(gòu)造函數(shù)S511()。由于m變成了0,所m+=ss,就為111了。這就是創(chuàng)建子類,函數(shù)初始化的過程。

      所以,在構(gòu)造器中有應(yīng)避免調(diào)用可能被改寫的方法,不然上上面會出現(xiàn)某些意想不到的結(jié)果。

    【sun認(rèn)證考試:java子對象創(chuàng)建過程】相關(guān)文章:

    sun java認(rèn)證考試介紹10-23

    Sun java認(rèn)證考試答案11-06

    Sun Java認(rèn)證考試科目08-30

    sun java認(rèn)證考試報考指南10-18

    SUN JAVA認(rèn)證介紹08-09

    Sun認(rèn)證Java開發(fā)員考試介紹10-09

    sun認(rèn)證考試:Java.io的使用08-23

    Sun Java認(rèn)證考試教材教輔09-13

    Sun java認(rèn)證考試真題答案09-25

    sun java認(rèn)證報考指南09-07

    主站蜘蛛池模板: 精品99久久aaa一级毛片| 日本精品夜色视频一区二区| 久久露脸国产精品| 97精品人妻系列无码人妻| 久久91这里精品国产2020| 996久久国产精品线观看| 最新国产精品拍自在线观看| MM1313亚洲精品无码| 国产午夜精品免费一区二区三区| 久久久精品国产亚洲成人满18免费网站| 国产成人精品综合网站| 在线精品视频一区二区| 精品乱码久久久久久夜夜嗨| 久久精品草草草| 久久99精品久久久久婷婷| 亚洲AV永久无码精品一区二区| 国产精品日韩深夜福利久久| 国产精品大白天新婚身材| 亚洲国产精品久久电影欧美| 久久精品中文字幕一区| 91久久精品视频| 欧美精品免费观看二区| 国产成人精品午夜福利| 婷婷五月深深久久精品| 亚洲А∨精品天堂在线 | 久久精品国产清自在天天线| 91精品国产麻豆国产自产在线 | 亚洲国产精品一区二区三区久久| 国产亚洲精品免费视频播放| 91精品国产色综久久| 久久91精品久久91综合| 精品久久一区二区三区| 凹凸69堂国产成人精品视频| 国产精品无码a∨精品| 国产精品亚洲аv无码播放| 久久99精品国产自在现线小黄鸭| 亚洲色精品88色婷婷七月丁香| 中文精品99久久国产| 最新国产成人精品2024| 亚洲AV无码成人精品区在线观看| 亚洲精品乱码久久久久66|