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

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

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

    隨筆 - 71  文章 - 15  trackbacks - 0
    <2025年7月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    因為口渴,上帝創(chuàng)造了水;
    因為黑暗,上帝創(chuàng)造了火;
    因為我需要朋友,所以上帝讓你來到我身邊
    Click for Shaanxi xi'an, Shaanxi Forecast
    ╱◥█◣
      |田|田|
    ╬╬╬╬╬╬╬╬╬╬╬
    If only I have such a house!
    〖總在爬山 所以艱辛〗
    Email:myesjoy@yahoo.com.cn
    NickName:yesjoy
    MSN:myesjoy@hotmail.com
    QQ:150230516

    〖總在尋夢 所以苦痛〗

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    Hibernate在線

    Java友情

    Java認(rèn)證

    linux經(jīng)典

    OA系統(tǒng)

    Spring在線

    Structs在線

    專家專欄

    企業(yè)信息化

    大型設(shè)備共享系統(tǒng)

    工作流

    工作流產(chǎn)品

    網(wǎng)上購書

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    1.源碼:
    abstract class Name {
       
    private String name;
       
    public abstract boolean isStupidName(String name) {}
    }
    運行錯誤提示:
    C:\Documents and Settings\wangzengwei>javac E:\myprogram\problem\Name.java
    E:\myprogram\problem\Name.java:3: 抽象方法不能有主體
       public abstract boolean isStupidName(String name) {}
                               ^
    1 錯誤

    C:\Documents and Settings\wangzengwei>javac E:\myprogram\problem\Name.java
    E:\myprogram\problem\Name.java:4: 需要 ';'
    }
    ^
    1 錯誤

    C:\Documents and Settings\wangzengwei>javac E:\myprogram\problem\Name.java

    大俠們,這有何錯誤?
    答案: 錯。abstract method必須以分號結(jié)尾,且不帶花括號。
    2.源碼:
    public class Something {
       
    void doSomething () {
           
    private String s = "";
           
    int l = s.length();
       }
    }
    運行錯誤提示:
    E:\myprogram\problem>javac Something.java
    Something.java:
    3: 非法的表達(dá)式開始
           
    private String s = "";
           
    ^
    1 錯誤

    E:\myprogram\problem
    >javac Something.java

    有錯嗎?
    答案: 錯。局部變量前不能放置任何訪問修飾符 (private,public,和protected)。final可以用來修飾局部變量
    (final如同abstract和strictfp,都是非訪問修飾符,strictfp只能修飾class和method而非variable)。
    3.源碼:
    abstract class Something1 {
       
    private abstract String doSomething ();
    }
    運行錯誤提示:
    E:\myprogram\problem>javac Something1.java
    Something1.java:
    2: 非法的修飾符組合:abstract 和 private
       
    private abstract String doSomething ();
                               
    ^
    1 錯誤
    這好像沒什么錯吧?
    答案: 錯。abstract的methods不能以private修飾。abstract的methods就是讓子類implement(實現(xiàn))具體細(xì)節(jié)的,怎么可以用private把abstract
    method封鎖起來呢? (同理,abstract method前不能加final)。
    4.源碼:
    public class Something2 {
       
    public int addOne(final int x) {
           
    return ++x;
       }
    }
    運行錯誤提示:
    E:\myprogram\problem>javac Something2.java
    Something2.java:
    3: 不能指定最終參數(shù) x
           
    return ++x;
                    
    ^
    1 錯誤

    這個比較明顯。
    答案: 錯。int x被修飾成final,意味著x不能在addOne method中被修改。
    5、源碼:
    public class Something3 {
       
    public static void main(String[] args) {
           Other o 
    = new Other();
           
    new Something3().addOne(o);
       }
       
    public void addOne(final Other o) {
           o.i
    ++;
       }
    }
    class Other {
       
    public int i;
    }
    和上面的很相似,都是關(guān)于final的問題,這有錯嗎?
    答案: 正確。在addOne method中,參數(shù)o被修飾成final。如果在addOne method里我們修改了o的reference
    (比如: o = new Other();),那么如同上例這題也是錯的。但這里修改的是o的member vairable
    (成員變量),而o的reference并沒有改變。
    6、源碼:
    class Something4 {
        
    int i;
        
    public static void main(String[] args) {
           Something4 st4 
    = new Something4();
           st4.doSomething();       
        }
        
    public void doSomething() {
            System.out.println(
    "i = " + i);
        }
    運行結(jié)果如下:
    E:\myprogram\problem>javac Something4.java

    E:\myprogram\problem
    >java Something4
    = 0

    有什么錯呢? 看不出來啊。
    答案: 正確。輸出的是"i = 0"。int i屬於instant variable (實例變量,或叫成員變量)。instant variable有default value。int的default value是0。
    7、源碼
    class Something5 {
        
    final int i;
        
    public void doSomething() {
            System.out.println(
    "i = " + i);
        }
    }
    運行錯誤提示:
    E:\myprogram\problem>javac Something5.java
    Something5.java:
    1: 可能尚未初始化變量 i
    class Something5 {
    ^
    1 錯誤
    和上面一題只有一個地方不同,就是多了一個final。這難道就錯了嗎?
    答案: 錯。final int i是個final的instant variable (實例變量,或叫成員變量)。final的instant variable沒有default value,必須在constructor (構(gòu)造器)結(jié)束之前被賦予一個明確的值。可以修改為"final int i = 0;"。
    修改正確后的代碼:
    class Something5 {
        
    final int i=0;
        
    public static void main(String[] args) {
           Something5 st5 
    = new Something5();
           st5.doSomething();       
        }
        
    public void doSomething() {
            System.out.println(
    "i = " + i);
        }
    }
    運行結(jié)果如下:
    E:\myprogram\problem>javac Something5.java

    E:\myprogram\problem
    >java Something5
    = 0
    posted on 2006-02-10 09:37 ★yesjoy★ 閱讀(419) 評論(0)  編輯  收藏 所屬分類: JAVA代碼查錯

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


    網(wǎng)站導(dǎo)航:
    相關(guān)文章:
     
    主站蜘蛛池模板: 麻豆成人精品国产免费| 亚洲午夜久久久久妓女影院| 色婷婷精品免费视频| 亚洲一区二区三区国产精品| 久久综合九色综合97免费下载| 久久精品国产亚洲av麻豆图片 | 波多野结衣免费视频观看| 四虎影视成人永久免费观看视频| 日产亚洲一区二区三区| 成年性午夜免费视频网站不卡| 免费手机在线看片| 亚洲国产精品国自产电影| 18禁无遮挡无码网站免费| 国产免费牲交视频免费播放| 亚洲国产精品午夜电影| 国产99视频精品免费视频7| 免费国产成人α片| 国产精品亚洲色婷婷99久久精品| 亚洲AV无码乱码国产麻豆| 在线不卡免费视频| 一区二区三区四区免费视频| 亚洲AV无码一区二区乱子仑| 亚洲AV成人一区二区三区AV| 曰批全过程免费视频在线观看无码 | 成在人线av无码免费高潮喷水| 亚洲综合小说另类图片动图| 国产精品亚洲一区二区三区在线 | 亚洲AV无码成人专区| 亚洲婷婷五月综合狠狠爱| 日本成人免费在线| 国产一卡二卡四卡免费| 91亚洲导航深夜福利| 亚洲国产综合久久天堂| 青春禁区视频在线观看直播免费| 日韩精品无码免费专区网站| 香蕉视频亚洲一级| 亚洲人成网国产最新在线| 亚洲男人的天堂在线播放| 亚洲一区精品伊人久久伊人| 好大好深好猛好爽视频免费| 1000部啪啪未满十八勿入免费|