<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年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    因為口渴,上帝創造了水;
    因為黑暗,上帝創造了火;
    因為我需要朋友,所以上帝讓你來到我身邊
    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認證

    linux經典

    OA系統

    Spring在線

    Structs在線

    專家專欄

    企業信息化

    大型設備共享系統

    工作流

    工作流產品

    網上購書

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    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必須以分號結尾,且不帶花括號。
    2.源碼:
    public class Something {
       
    void doSomething () {
           
    private String s = "";
           
    int l = s.length();
       }
    }
    運行錯誤提示:
    E:\myprogram\problem>javac Something.java
    Something.java:
    3: 非法的表達式開始
           
    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(實現)具體細節的,怎么可以用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: 不能指定最終參數 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;
    }
    和上面的很相似,都是關于final的問題,這有錯嗎?
    答案: 正確。在addOne method中,參數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);
        }
    運行結果如下:
    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 (構造器)結束之前被賦予一個明確的值。可以修改為"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);
        }
    }
    運行結果如下:
    E:\myprogram\problem>javac Something5.java

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

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


    網站導航:
     
    主站蜘蛛池模板: 亚洲av中文无码乱人伦在线咪咕| 色婷婷7777免费视频在线观看 | 亚洲www77777| 99re6在线视频精品免费下载| 久久亚洲国产中v天仙www| 中文字幕视频在线免费观看| 亚洲一区二区三区香蕉| 中文字幕av无码不卡免费| 亚洲伊人色欲综合网| 中文字幕无码一区二区免费| 亚洲国产精品无码久久SM| 91精品国产免费久久国语麻豆| 亚洲首页在线观看| 免费看国产成年无码AV片| 亚洲日韩国产二区无码| 可以免费观看一级毛片黄a| 九九全国免费视频| 亚洲av永久无码精品漫画| 在线人成精品免费视频| 亚洲天堂2017无码中文| 四虎影在线永久免费观看| 一级毛片免费全部播放| 久久久久亚洲av无码尤物| 国产91免费在线观看| 国产AV无码专区亚洲AV蜜芽| 区三区激情福利综合中文字幕在线一区亚洲视频1| 国产精品免费一区二区三区| 久久久亚洲欧洲日产国码农村| 中文字幕无码视频手机免费看 | 久久国产精品成人免费| 亚洲一区动漫卡通在线播放| 日本黄色免费观看| 两个人看www免费视频| 亚洲精品中文字幕无码AV| 永久黄网站色视频免费观看| 国产精品美女久久久免费 | 无码少妇一区二区浪潮免费| 免费人人潮人人爽一区二区| 久久久久亚洲av无码专区| 午夜dj免费在线观看| 久草视频在线免费看|