<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 63  文章 - 0  trackbacks - 0
    <2009年5月>
    262728293012
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    Java中的instanceof關(guān)鍵字 收藏
     instanceof是Java的一個二元操作符,和==,>,<是同一類東東。由于它是由字母組成的,所以也是Java的保留關(guān)鍵字。它的作用是測試它左邊的對象是否是它右邊的類的實例,返回boolean類型的數(shù)據(jù)。舉個例子:

      String s = "I AM an Object!";
      boolean isObject = s instanceof Object;

      我們聲明了一個String對象引用,指向一個String對象,然后用instancof來測試它所指向的對象是否是Object類的一個實例,顯然,這是真的,所以返回true,也就是isObject的值為True。
      instanceof有一些用處。比如我們寫了一個處理賬單的系統(tǒng),其中有這樣三個類:

      public class Bill {//省略細節(jié)}
      public class PhoneBill extends Bill {//省略細節(jié)}
      public class GasBill extends Bill {//省略細節(jié)}

      在處理程序里有一個方法,接受一個Bill類型的對象,計算金額。假設(shè)兩種賬單計算方法不同,而傳入的Bill對象可能是兩種中的任何一種,所以要用instanceof來判斷:

      public double calculate(Bill bill) {
      if (bill instanceof PhoneBill) {
      //計算電話賬單
      }
      if (bill instanceof GasBill) {
      //計算燃氣賬單
      }
      ...
      }
      這樣就可以用一個方法處理兩種子類。

      然而,這種做法通常被認為是沒有好好利用面向?qū)ο笾械亩鄳B(tài)性。其實上面的功能要求用方法重載完全可以實現(xiàn),這是面向?qū)ο笞兂蓱械淖龇ǎ苊饣氐浇Y(jié)構(gòu)化編程模式。只要提供兩個名字和返回值都相同,接受參數(shù)類型不同的方法就可以了:

      public double calculate(PhoneBill bill) {
      //計算電話賬單
      }

      public double calculate(GasBill bill) {
      //計算燃氣賬單
      }

      所以,使用instanceof在絕大多數(shù)情況下并不是推薦的做法,應當好好利用多態(tài)。
    posted on 2009-05-07 13:14 lanxin1020 閱讀(179) 評論(0)  編輯  收藏 所屬分類: j2se
    主站蜘蛛池模板: 亚洲AV无码AV日韩AV网站| 亚洲AV无码一区二区三区牲色 | 亚洲一区二区三区电影| 亚洲美女免费视频| 亚洲成a人片在线不卡一二三区| 亚洲视频一区二区| **一级毛片免费完整视| 99亚洲精品卡2卡三卡4卡2卡| 国产成人亚洲精品狼色在线| 亚洲人成免费网站| 无码人妻一区二区三区免费视频 | 欧洲黑大粗无码免费| fc2成年免费共享视频18| 亚洲精品**中文毛片| 亚洲AV日韩精品一区二区三区 | 在线观看免费高清视频| www.xxxx.com日本免费| 一本色道久久88亚洲精品综合 | 破了亲妺妺的处免费视频国产| 中文字幕免费在线观看动作大片 | 久久国产乱子精品免费女| 亚洲乱妇老熟女爽到高潮的片| 亚洲av无码一区二区三区乱子伦 | 中文在线免费看视频| 亚洲成AV人影片在线观看| 一区二区三区亚洲| 亚洲第一黄色网址| 成人最新午夜免费视频| 日韩视频在线观看免费| 免费观看四虎精品成人| 亚洲综合在线一区二区三区 | 亚洲电影免费在线观看| 亚洲成a人在线看天堂无码| 成年大片免费视频| 每天更新的免费av片在线观看| 久久国产美女免费观看精品 | 国内成人精品亚洲日本语音| 亚洲国产精品无码久久久| 久久亚洲精品国产精品黑人| 不卡精品国产_亚洲人成在线| 狠狠久久永久免费观看|