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

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

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

    java世界
    有些人注定要生活在彼岸,可以親近可以愛憐,甚至可以窮盡一生去思念,只是無法觸及有些距離,注定不能跨越只能倆倆相望,就像有些愛只能養在心里長在眼中,不能捧在手里放在身邊,注定只能邂逅無法遭遇!
    posts - 12,comments - 15,trackbacks - 0
    1.關于在靜態方法中訪問非靜態內部類的問題
    public class Outer{
    public String name = "Outer";
    public static void main(String argv[]){
    //Inner myinner = new Inner(); //直接用這句話創建會編譯錯誤
    Outer myouter=new Outer(); //先創建外部類的對象
    Outer.Inner myinner=myouter.new Inner();
    myinner.showName();
    }//End of main
    //下面這段代碼用來測試這種n煩的辦法
    public void amethod(){
    Outer myouter=new Outer();
    Outer.Inner myinner=myouter.new Inner();
    myinner.showName();
    }
    //非靜態方法訪問非靜態內部類
    private class Inner{
    String name =new String("Inner");
    void showName(){
    System.out.println(name);
    }
    }//End of Inner class
    }
    在非靜態方法訪問非靜態內部類直接創建該內部類的對象:new Inner().showName();當然也可以采取這種n煩的辦法假設private class Inner改成static private class Inner, 那么在靜態方法中訪問靜態內部類也是直接創建該內部類的對象,即Inner myinner = new Inner(),或者Outer.Inner myinner = new Outer.Inner()也行得通,可見這種n煩的方法在上面三種情況下都是可以用的。
    2.Abstract方法不能用final,static修飾非abstract方法在abstract類中可以用final,static
    抽象類中的抽象方法不能是final,但是非抽象方法前加final可以編譯通過因為abstract和final相互排斥,前者專用于繼承,后者禁止繼承
    抽象類中的抽象方法不能為static
    非抽象方法可以為static
    包裹類Integer、 String 、Float、 Double等都是final類,不能被繼承!Integer i=new Integer(“6”);如果字符串不是數字,會產生運行異常(不會出現編譯錯誤)但是對于boolean,這個規則不適用。當字符串時(大小寫無關),Boolean對象代表的數值為true,其他字符串均為false如:
    Boolean b = new Boolean(“afiwou”); 代表false
    Boolean b = new Boolean(“tRue”); 是true
    3.多態性、虛擬方法調用
    public class Test8 {
    public static void main(String [] args){
    Base b = new Subclass();
    System.out.println(b.x);
    System.out.println(b.method());
    }
    }
    class Base{
    int x = 2;
    int method(){
    return x;
    }
    }
    class Subclass extends Base{
    int x = 3;
    int method(){
    return x;
    }
    }
    結果是2,3,而不是3,3
    Employee e = new Manager();
    e.department = " Finance " ;
    //department 是Manager的一個特殊屬性
    聲明變量e后,你能訪問的對象部分只是Employee的部分;Manager的特殊部分是隱藏的。這是因為編譯器應意識到,e 是一個Employee,而不是一個Manager。但重寫的方法除外
    在你接收父類的一個引用時,你可以通過使用instanceof運算符判定該對象實際上是你所要的子類,并可以用類型轉換該引用的辦法來恢復對象的全部功能。為什么說“恢復對象的全部功能”,就是因為上一格所描述的,子類對象賦給父類句柄后,該句柄不能訪問子類的那些特殊屬性和方法,要用就要重新造型。這其實是多態參數的后續應用,形成這樣一個鏈條:傳入多態參數??instanceof判斷類型??casting??恢復功能
    Employee e = new Manager();
    e.getDetails();
    在此例中,Manager 重寫了Employee的getDetail()方法。被執行的e.getDetails()方法來自對象的真實類型:Manager。事實上,執行了與變量的運行時類型(即,變量所引用的對象的類型)相關的行為,而不是與變量的編譯時類型相關的行為。這是面向對象語言的一個重要特征。它也是多態性的一個特征,并通常被稱作虛擬方法調用??“動態綁定”
    寫了這么多也不知道對你有沒有幫助呢?
    posted on 2005-11-17 09:34 安德爾斯 閱讀(321) 評論(2)  編輯  收藏

    FeedBack:
    # re: java筆記2
    2006-03-16 10:45 | lu
    很不錯!希望你能繼續寫更多的經驗!講的在具體一些讓我們這些剛起步的看的更清楚!例子寫多點但是要簡點些!  回復  更多評論
      
    # re: java筆記2
    2006-04-20 10:48 | island_hainan
    支持你.  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲国产成人久久| 亚洲AV无码AV男人的天堂| 亚洲一级免费毛片| 99热在线精品免费播放6| 亚洲gv猛男gv无码男同短文| 国内精品久久久久影院免费| 国产亚洲精AA在线观看SEE| 中文字幕手机在线免费看电影| 精品亚洲成α人无码成α在线观看| 免费一级毛suv好看的国产网站| 国产又大又长又粗又硬的免费视频| 亚洲AV无码专区亚洲AV桃| 国产精品嫩草影院免费| 久久水蜜桃亚洲AV无码精品| 波多野结衣视频在线免费观看 | 波多野结衣免费在线观看| 亚洲一区二区三区在线| 免费观看大片毛片| 一区二区三区精品高清视频免费在线播放| 四虎免费久久影院| 一级特黄色毛片免费看| 亚洲AV无码国产精品麻豆天美| 男人都懂www深夜免费网站| 亚洲精品中文字幕乱码影院| 成人奭片免费观看| 无码AV动漫精品一区二区免费| 亚洲色大成网站www永久一区| 久久成人a毛片免费观看网站| 亚洲一区在线视频| 免费国产真实迷j在线观看| a级日本高清免费看| 亚洲人成7777影视在线观看| 国产精品免费_区二区三区观看| av成人免费电影| 亚洲手机中文字幕| 亚洲电影日韩精品| 3344免费播放观看视频 | 日本激情猛烈在线看免费观看| 亚洲精品成人无限看| 国产乱码免费卡1卡二卡3卡| 特黄特色的大片观看免费视频|