3.17测试复盘

  • 如下代码的输出是

      package Test;
      public class Test {
          private static void test(int[] arr) {
              for (int i = 0; i < arr.length; i++) {
                  try {
                      if (arr[i] % 2 == 0) {
                          throw new NullPointerException();
                      } else {
                          System.out.print(i);
                      }
                  } finally {
                      System.out.print("e");
                  }
              }
          }
    
          public static void main(String[]args) {
              try {
                  test(new int[] {0, 1, 2, 3, 4, 5});
              } catch (Exception e) {
                  System.out.print("E");
              }
          }
    
      }

    可以得到的结论是( )
    A. 编译出错
    B. eE
    C. Ee
    D. eE1eE3eE5
    E. Ee1Ee3Ee5

    解析:arr[0] 等于0,抛出空指针异常,进入finally块,输出e,test方法结束,main方法捕捉到空指针异常进入catch块,输出E
    答案:B

  • 以下代码执行的结果显示是多少()?

      public class Demo{
          public static void main(String args[]) {
              int count = 0;
              int num = 0;
              for (int i = 0; i <= 100; i++) {
                  num = num + i;
                  count = count++;
              }
              System.out.println("num * count = " + (num * count));
          }
      }

    A.505000
    B. 0
    C. 运行时错误
    D.5050

    解析:count = count++ ,count一直为0
    答案:B

  • 阅读如下代码。 请问,对语句行 test.hello(). 描述正确的有()

      package NowCoder;
      class Test {
          public static void hello() {
              System.out.println("hello");
          }
      }
      public class MyApplication {
          public static void main(String[] args) {
              // TODO Auto-generated method stub
              Test test=null;
              test.hello();
          }
      }
    

    A. 能编译通过,并正确运行
    B. 因为使用了未初始化的变量,所以不能编译通过
    C. 以错误的方式访问了静态方法
    D. 能编译通过,但因变量为null,不能正常运行

    解析:即使Test test=null;这里也会加载静态方法,所以test数据中包含Test类的初始化数据。
    答案:A

  • 哪个是不正确的字符常量?
    A. ”\n”
    B. ”1”
    C. ”a”
    D. ”\101”

    解析:一个字符常量表示为一个字符或一个转义序列,被一对ASCII单引号关闭。四个答案都采用的是双引号关闭,所以是字符串常量而不是字符常量。忽略这个错误,那么这题就没有答案。
    答案:ABCD

  • 有如下4条语句:()

      Integer i01=59;
      int i02=59;
      Integer i03=Integer.valueOf(59);
      Integer i04=new Integer(59);

    以下输出结果为false的是:
    A. System.out.println(i01 == i02);
    B. System.out.println(i01 == i03);
    C. System.out.println(i03 == i04);
    D. System.out.println(i02 == i04);

    解析:int和Integer比较时,Integer会自动拆箱成int类型进行比较。所以AD为true;
    答案:C

  • 如下代码,执行test()函数后,屏幕打印结果为()

      public class Test2
      {
          public void add(Byte b)
          {
              b = b++;
          }
          public void test()
          {
              Byte a = 127;
              Byte b = 127;
              add(++a);
              System.out.print(a + " ");
              add(b);
              System.out.print(b + "");
          }
      }

    A. 127 127
    B. 128 127
    C. 129 128
    D. 以上都不对

    解析:public void add(Byte b){ b=b++; } 这里涉及java的自动装包/自动拆包(AutoBoxing/UnBoxing) Byte的首字母为大写,是类,看似是引用传递,但是在add函数内实现++操作,会自动拆包成byte值传递类型,所以add函数还是不能实现自增功能。也就是说add函数只是个摆设,没有任何作用。 Byte类型值大小为-128~127之间。 add(++a);这里++a会越界,a的值变为-128 add(b); 前面说了,add不起任何作用,b还是127
    答案:D

  • 下面关于Applet的说法是正确的是
    A. Applet可以在带有Java解释器的浏览器中运行
    B. Applet类必须继承java.applet.Applet
    C. Applet可以访问本地文件
    D. Applet是Object类的子类

    答案:ABCD

  • 两个线程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来消息,或者建立某个条件后再向前执行,这种制约性合作关系被称为进程的同步

  • 设属性A是关系R的主属性,则属性A不能取空值(NULL)。这是(实体完整性)。

  • 以太网媒体访问控制技术CSMA/CD的机制是(争用宽宽带)。

  • 以下程序的打印结果是()

      1.#include<iostream>
      2.using namespace std;
      3.
      4.void swap_int(int a , int b)
      5.{
      6.    int temp = a;
      7.    a = b;
      8.    b = temp;
      9.}
      10.
      11.void swap_str(char*a , char*b)
      12.{
      13.    char*temp = a;
      14.    a = b;
      15.    b = temp;
      16.}
      17.
      18.int main(void)
      19.{
      20.    int a = 10;
      21.    int b = 5;
      22.    char*str_a = "hello world";
      23.    char*str_b = "world hello";
      24.    swap_int(a , b);.
      25.    swap_str(str_a , str_b);
      26.    printf("%d %d %s %s\n",a,b,str_a,str_b);
      27.
      28.    return 0;
      29.}

    A. 10 5 hello world world hello
    B. 10 5 world hello hello world
    C. 5 10 hello world world hello
    D. 5 10 world hello hello world

    解析:swap_str(str_a, str_b)将实参的地址传递给了形参,其实跟上面的类似,并没有改变实参str_a、str_b的指向,实参没有交换。
    答案:A

  • 直接封装RIP、OSPF、BGP报文的协议分别是 。
    A. TCP、UDP、IP
    B. TCP、IP、UDP
    C. UDP、TCP、IP
    D. UDP、IP、TCP

    解析:RIP是一种分布式的基于距离向量的路由选择协议,通过广播UDP报文来交换路由信息。OSPF是一个内部网关协议,不使用传输协议,如UDP或TCP,而是直接用IP包封装它的数据。BGP是一个外部网关协议,用TCP封装它的数据。因此,选D。
    答案:D

  • 所有软件活动过程包括的四个基本活动是()
    A. 可行性研究
    B. 软件描述
    C. 软件设计和实现
    D. 软件规划
    E. 软件有效性验证

    F. 软件进化

    答案:BCEF

  • 下面描述中不属于数据库系统特点的是?
    A. 数据共享
    B. 数据完整性
    C. 数据冗余度高
    D. 数据独立性高

    解析:数据库系统的特点为高共享、低冗余、独立性高、具有完整性等,C错误。
    答案:C

猜你喜欢

转载自www.cnblogs.com/l999q/p/12520955.html