<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • java代碼查錯面試題

    時間:2020-11-10 15:44:17 面試問題 我要投稿

    java代碼查錯面試題

    1.

    java代碼查錯面試題

    abstract class Name

    {

        private String name;

        public abstract boolean isStupidName(String name) {}

    }

     

    答案: 錯。abstract method必須以分號結尾,且不帶花括號。

     

    2.

    public class Something

    {

        void doSomething ()

       {

            private String s = "";

            int l = s.length();

        }

    }

     

    答案: 錯。局部變量前不能放置任何訪問修飾符 (privatepublic,和protected)final可以用來修飾局部變量(final如同abstractstrictfp,都是非訪問修飾符,strictfp只能修飾classmethod而非variable)

     

     

    3.

    abstract class Something

    {

        private abstract String doSomething ();

    }

     

    答案: 錯。abstractmethods不能以private修飾。abstractmethods就是讓子類implement(實現)具體細節的,怎么可以用privateabstractmethod封鎖起來呢? (同理,abstract method前不能加final)

    4.

    public class Something

    {

        public int addOne(final int x)

        {

            return ++x;

        }

    }

     

    答案: 錯。int x被修飾成final,意味著x不能在addOne method中被修改。

     

     

    5.

    public class Something

    {

        public static void main(String[] args)

        {

            Other o = new Other();

            new Something().addOne(o);

        }

        public void addOne(final Other o)

        {

            o.i++;

        }

    }

    class Other

    {

        public int i;

    }

    答案: 正確。在addOne method中,參數o被修飾成final。如果在addOne method里我們修改了oreference(比如: o = new Other();),那么如同上例這題也是錯的。但這里修改的是omember vairable(成員變量),而oreference并沒有改變。

     

     

    6.

    class Something

    {

         int i;

         public void doSomething()

         {

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

         }

    }

     

    答案: 正確。輸出的是"i = 0"int i屬於instant variable (實例變量,或叫成員變量)instant variabledefault valueint的'default value0

     

     

    7.

    class Something

    {

         final int i;

         public void doSomething()

         {

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

         }

    }

     

    答案: 錯。final int i 是個finalinstant variable (實例變量,或叫成員變量)finalinstant variable沒有default value,必須在constructor (構造器)結束之前被賦予一個明確的值。可以修改為"final int i = 0;"

     

    8.

    public class Something

    {

          public static void main(String[] args)

         {

             Something s = new Something();

             System.out.println("s.doSomething() returns " + doSomething());

         }

         public String doSomething()

        {

             return "Do something ...";

         }

    }

     

    答案: 錯。看上去在maincall doSomething沒有什么問題,畢竟兩個methods都在同一個class里。但仔細看,mainstatic的。static method不能直接call non-static methods可改成"System.out.println("s.doSomething() returns " + s.doSomething());"。同理,static method不能訪問non-static instant variable

    【java代碼查錯面試題】相關文章:

    JAVA常用代碼積累08-19

    如何讓JAVA代碼更高效10-06

    在Java中執行JavaScript代碼11-18

    Java中的動態代碼編程08-15

    Java代碼的基本知識08-14

    java證書的加密與解密代碼08-12

    Java定時器代碼的編寫10-05

    java基礎面試題201711-13

    華為Java面試題精選10-24

    高級Java面試題匯總09-12

    主站蜘蛛池模板: 亚洲欧美精品综合中文字幕| 亚洲国产综合精品一区在线播放| 国产精品热久久毛片| 日韩精品真人荷官无码| 国产精品自在线拍国产第一页| AAA级久久久精品无码片| 午夜国产精品无套| 国产精品1024视频| 久久99热狠狠色精品一区| 囯产精品一区二区三区线| 久久国产香蕉一区精品| 久久精品国产亚洲一区二区| 亚洲线精品一区二区三区影音先锋| 精品国产一区二区三区免费| 精品久久久久久成人AV| 中文字幕日韩精品有码视频| 国产欧美日韩精品专区| 欧美精品在线一区二区三区| 国产精品视频一区二区三区无码| 天天爽夜夜爽精品视频app| xxx国产精品视频| 最新精品露脸国产在线 | 欧洲精品久久久av无码电影| 久久精品国产一区| 国产国产精品人在线观看| 中文字幕日韩精品有码视频| 国语自产精品视频| 国产在线精品观看免费观看| 国产成人精品无人区一区| 成人精品一区二区久久久| 久久精品男人影院| 欧美精品888| 亚洲精品在线观看视频| 亚洲乱码精品久久久久..| 久久久久国产精品麻豆AR影院| 亚洲国产精品一区二区久久| 国产精品亚洲日韩欧美色窝窝色欲| 四虎国产精品永久在线| 亚洲av无码精品网站| 无码精品人妻一区二区三区人妻斩| 亚洲国产另类久久久精品黑人 |