一份Java基础知识笔试题附答案

5次阅读

共计 4371 个字符,预计需要花费 11 分钟才能阅读完成。

如果运行 JavaDemo, 什么样的信息会打印出来?

 1/**
 2 如果运行 JavaDemo, 什么样的信息会打印出来?
 3*/
 4public class Demo {5  public static void main(String[] args) {6    Integer intObj = Integer.valueOf(args[args.length -1]);
 7    int i = intObj.intValue();
 8    if (args.length > 1){9      System.out.println(i);
10    }
11    if (args.length > 0){12      System.out.println(i-1);
13    }else {14      System.out.println(i-2);
15    }
16  }
17}
请选择:
(A)       Demo
(B)       Demo -1
(C)       0
(D)      -1

正确答案:    D

以下那些是不合法的变量名?

(a)lapha    (a)_abcd
(c)xy+abc    (d)transient
(e)account-num    (f)vert_long_name
请选择:
(A)     a.c,e    
(B)     a,c,d,e     
(C)     c,d,e,f  
(D)     全部
正确答案:    D

虽然这些变量名有些可以使用, 但是根据标识符硬性要求,必须满足的规范有如下几点
标识符可以包含字符例如英文字母 26 个 (区分大小写)、0- 9 数字、$(美元符号)和 _(下划线)。
标识符不能以数字开头。
标识符不能是关键字。
标识符是严格区分大小写的

运行以下代码会输出什么信息?

 1/**
 2 运行以下代码会输出什么信息?
 3*/
 4 static class Test{
 5    static int i ;
 6    public static void main(String[] args) {7      while (i < 0){
 8        i--;
 9      }
10      System.out.println(i);
11    }
12  }
13}
(A)    无法编译, 因为 i 没有初始化
(B)    可以编译, 但无法运行
(C)    可编译运行, 不输出任何信息
(D)    程序输出 0
正确答案:     D

以下代码会输出什么信息?

 1/**
 2 运行以下代码会输出什么信息
 3*/
 4  static class Test2{5    public static void main(String[] args) {
 6      int i = 0;
 7      boolean t = true;
 8      boolean f = false,b;
 9      b = (t || ((i++) == 0));
10      b = (f || ((i += 2) > 0 ));
11      System.out.println("i =" + i);
12    }
13  }
14}
(A)    0
(B)    1
(C)    2
(D)    3
正确答案:     D

以下代码会输出什么信息?

 1/**
 2 以下代码会输出什么信息?
 3*/
 4  static class Test3{5    public static void main(String[] args) {
 6      int i,j,k,l = 0;
 7      k = l++;
 8      j = ++k;
 9      i = j++;
10      System.out.println("i =" + i);
11    }
12  }
(A)    0
(B)    1
(C)    2
(D)    3
正确答案:     B

下面那个方法修饰符标识的方法可以被同一包内的类和子类所访问?
(A) public
(B) protected
(C) private
(D) default
正确答案: A

阅读下面的代码片段, 选择正确的答案
 1/**
 2 阅读以下代码片段, 选择正确的答案
 3*/
 4  static class Test4{5    public static void main(String[] args) {
 6      Integer num1 = 10;
 7      Integer num2 = Integer.valueOf(10);
 8      Integer num3 = new Integer(10);
 9      if (num1 == num2){10        System.out.println("Equal");
11      }else {12        System.out.println("Not Equal");
13      }
14      if (num1 == num3){15        System.out.println("Equal");
16      }else {17        System.out.println("Not Equal");
18      }
19    }
20  }
请选择:
(A)   输出 Equal
(B)   输出 Equal ,Not Equal
(C)   输出 Not Equal,Equal
(D)   输出 Not Equal,,Not Equal
正确答案:        B

下面代码执行后, 变量 number 的值是多少?

 1/**
 2 下面代码执行后, 变量 nunber 的值是多少?
 3*/
 4  static class  Test5 {5    public static void main(String[] args) {
 6      int number = 0;
 7      int number2 = 12;
 8      while (number < number2) {
 9        number = number +1;
10      }
11      System.out.println("number =" + number);
12    }
13  }
14}
请选择:
(A)   输出 5
(B)   输出 12
(C)   输出 13
(D)   输出 21
正确答案:    B

下面那两个语句是等效的?

 1/**
 2 那两个语句是等效的?
 3*/
 4  static  class Test6{5    public static void main(String[] args) {6      System.out.println(16*4);
 7      System.out.println(16 >> 2);
 8      System.out.println(16/2^2);
 9      System.out.println(16>>>2);
10    }
11  }
12}
请选择:
(A)   1 和 2
(B)   2 和 4
(C)   3 和 4
(D)   1 和 3
正确答案:     B

以下代码的输出结果是?

 1/**
 2 以下代码的输出结果是?
 3*/
 4  static class Test7{5    public static void main(String[] args) {
 6      String a = "newspaper";
 7      a = a.substring(5,7);
 8      char b = a.charAt(1);
 9      a = a + b;
10      System.out.println("a =" + a);
11    }
12  }
请选择:
(A)   apa
(B)   app
(C)   apea
(D)   apep
正确答案:     B

阅读下列代码, 回答问题, 当运行完第 6 行代码之后, 有多少对象可能被垃圾回收?

 1 static class X{2    public static void main(String[] args) {3      X x = new X();
 4      X x2 = mi(x);
 5      X x4 = new X();
 6      doComplexStuff();
 7    }
 8    private static void doComplexStuff() {
 9
10    }
11    private static X mi(X mx) {12      mx= new X();
13      return mx;
14    }
15  }
16}
请选择:
(A)    0
(B)   1
(C)   2
(D)   3
正确答案:     B
阅读下面的代码, 如果编译运行程序, 会显示什么? 请选择正确的答案
1static class Test8{2  public static void main(String[] args) {3    Dog[][] theDogs = new Dog[3][];
4    System.out.println(theDogs[2][0].toString());
5  }
6}
请选择:
(A)    null
(B)   theDogs
(C)   编译错误
(D)   运行时异常
正确答案:    C

下面那三个语句是正确的?

1float f1 = -343;
2float f2 = 3.14;
3float f3 = 0*12345;
4float f4 = 42e7;
5float f5 = 2001.0D;
6float f6 = 2.18F;
请选择:
(A)   1,2,4
(B)   2,3,5
(C)   1,3,6
(D)   2,4,6
正确答案:    C

请选择程序的输出结果

 1static  class Test10{2  public static void main(String[] args) {
 3    int i = 1,j = 10;
 4    do {5      if (i > j){
 6        break;
 7      }
 8      j--;
 9    }while (++i < 5);
10    System.out.println("i =" + i + "and j =" + j);
11  }
12}
请选择:
(A)  i = 6 and j = 5
(B)  i = 5 and j = 5
(C)  i = 6 and j = 4
(D)  i = 5 and j = 6
正确答案:    D

如果想存储元素在集合中无重复而且可以通过他们的自然顺序访问, 下面那个接口可以满足条件?
请选择:
(A) java.util.Map;
(B) java.util.Set;
(C) java.util.List;
(D) java.util.Collection
正确答案: B

下面程序输出的结果是什么?
 1static  class Test11{2  public static void main(String[] args) {
 3    int x = 0;
 4    int y = 0;
 5    for (int i = 0; i < 5; i++) {6      if ((++x > 2) || (++y >2)){
 7        x++;
 8      }
 9    }
10    System.out.println(x + "" + y);
11  }
12}
请选择:
(A)    5 3
(B)    8 2 
(C)    8 3 
(D)    8 5 
正确答案:    B

下面那句话是正确的?
请选择:
(A) notfyAll()方法只能在同步上下文中调用
(B) 一个线程必须拥有同步锁才能调用 wati()
(C) notifyAll() 方法是在 Java.lang.Trread 中定义的
(D) notify() 方法会使用一个线程立即释放锁
正确答案: B

以下程序输出的结果是什么?

 1public class Demo4 extends Thread{2  final StringBuffer sb1 = new StringBuffer();
 3  final StringBuffer sb2 = new StringBuffer();
 4
 5  public static void main(String[] args) {6    final Demo4 h = new Demo4();
 7    new Thread(){
 8      @Override
 9      public void run() {10        synchronized (this){11          h.sb1.append("A");
12          h.sb2.append("B");
13          System.out.println(h.sb1);
14          System.out.println(h.sb2);
15        }
16      }
17    }.start();
18    new Thread(){
19      @Override
20      public void run() {21        synchronized (this){22          h.sb1.append("D");
23          h.sb2.append("C");
24          System.out.println(h.sb2);
25          System.out.println(h.sb1);
26        }
27      }
28    }.start();
29  }
30}
请选择:
(A)    ABBCAD
(B)    ABCBCAD
(C)    CDADACB
(D)    无法确定
正确答案:    A

本文由公众号【框架师,ID:mohu121】首发,转载请注明出处

正文完
 0