<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>

            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

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看