Day17刷题总结

选择题

  • 欲构造ArrayList类的一个实例,此类实现了List接口,下列哪个方法是正确的?()
    A.ArrayList myList=new Object(B)
    B.List myList=new ArrayList()
    C.ArrayList myList=new List()
    D.List myList=new List()
  • 对于java类型变量char c,short s,float f,double d,表达式c*s+f+d的结果类型为(D)
    A.float
    B.char
    C.short
    D.double
  • 下面程序段执行完成后,则变量sum的值是( B )。
    int b[][]={{1}, {2,2}, {2,2,2}};
    int sum=0;
    for(int i=0;i<b.length;i++) {
    for(int j=0;j<b[i].length;j++) {
    sum+=b[i][j];
    }
    }
    A.32
    B.11
    C.2
    D.3
  • System.out.println(“is ”+ 100 + 5);
    System.out.println(100 + 5 +“ is”);
    System.out.println(“is ”+ (100 + 5));
    的输出结果分别是? (D )
    A.is 1005, 1005 is, is 1005
    B.is 105, 105 is, is 105
    C.is 1005, 1005 is, is 105
    D.is 1005, 105 is, is 105
  • 关于Float,下列说法错误的是©
    A.Float是一个类
    B.Float在java.lang包中
    C.Float a=1.0是正确的赋值方法
    D.Float a= new Float(1.0)是正确的赋值方法
    解析:Float是类,float不是类.
    查看JDK源码就可以发现Byte,Character,Short,Integer,Long,Float,Double,Boolean都在java.lang包中.
    Float正确复制方式是Float f=1.0f,若不加f会被识别成double型,double无法向float隐式转换.
    Float a= new Float(1.0)是正确的赋值方法,但是在1.5及以上版本引入自动装箱拆箱后,会提示这是不必要的装箱的警告,通常直接使用Float f=1.0f.
  • 哪个类可用于处理 Unicode?(A)
    A.InputStreamReader
    B.BufferedReader
    C.Writer
    D.PipedInputStream
    解析:
  • 下面赋值语句中正确的是(A)
    A.double d=5.3e12;
    B.float f=11.1;
    C.int i=0.0;
    D.Double oD=3;
    解析:
    java中整型默认的是int,浮点默认的是double.
    B: double类型的11.1 转成 float,是需要强制转换的
    C: double类型的0.0 转成 int,也是需要强制转换的
    D: int 转为 封装类型Double,是无法编译的
    Double oD = 3.0, 会把double类型的3.0自动装箱为Double,没有问题
  • 根据以下代码段,下列说法中正确的是( C )。

public class Parent {
private void m1(){}
void m2(){}
protected void m3(){}
public static void m4(){}
}
A.子类中一定能够继承和覆盖Parent类的m1方法
B.子类中一定能够继承和覆盖Parent类的m2方法
C.子类中一定能够继承和覆盖Parent类的m3方法
D.子类中一定能够继承和覆盖Parent类的m4方法
解析:
通过继承,子类可以拥有所有父类对其可见的方法和域
A.私有方法只能在本类中可见,故不能继承,A错误
B.缺省访问修饰符只在本包中可见,在外包中不可见,B错误
C.保护修饰符凡是继承自该类的子类都能访问,当然可被继承覆盖;C正确
D.static修饰的成员属于类成员,父类字段或方法只能被子类同名字段或方法遮蔽,不能被继承覆盖,D错误

-以下哪项不属于java类加载过程?(B)
A.生成java.lang.Class对象
B.int类型对象成员变量赋予默认值
C.执行static块代码
D.类方法解析

  • 变量a是一个64位有符号的整数,初始值用16进制表示为:0Xf000000000000000; 变量b是一个64位有符号的整数,初始值用16进制表示为:0x7FFFFFFFFFFFFFFF。 则a-b的结果用10进制表示为多少?(C)
    A.1
    B.-(262+261+2^60+1)
    C.262+261+2^60+1
    D.259+(255+254+…+22+21+20)
    解析:
    0x7FFFFFFFFFFFFFFF+1=0X8000000000000000,那么
    a-b=0Xf000000000000000-0X8000000000000000+1
    =0X7000000000000001
    =1615*7+1601
    =2^60
    7+1
    =260*(22+21+20)+1
    =262+261+2^60+1

猜你喜欢

转载自blog.csdn.net/sl1130398099/article/details/83548493
今日推荐