第四章 面向对象和类 (续)

前四章 单元测验

1、单选题:
 有如下代码段:‌public  static void booleanTest() {‌        int a = 1, b =1;‌        if (a == b || b<0)‌            a++;‌        if (a <= 2 &&(!(b<0)))‌            b=b<<1;‌        System.out.println(a + "," + b);‌}‌‌        则运行结果为:‌‌‌
选项:
A: 2,1
B: 2,2
C: 2,3
D: 1,2
答案: 【 2,2

2、单选题:
‏如下赋值语句中,有语法错误的是?‍
选项:
A: float f1 = 1.2;
B: float f1 = 1.2f
C: float f1 = 1;
D: float f1 = 0xAE;
答案: 【 float f1 = 1.2;

3、单选题:
有如下类定义:‌public class Rectangle {‌public int width = 3;‌public int height = 4;‌public int area() {‌        return width * height;‌}‌}‌则如下代码输出结果为:‌Rectangle rectangle;‌rectangle.height = 5;‌System.out.println(rectangle.area());‌
选项:
A: 15
B: 有编译错误,程序不能运行
C: 12
D: 0
答案: 【 有编译错误,程序不能运行

4、单选题:
执行如下代码片段后,i和n的值分别为:‌int i = 10;‌int n =( i++) % 5;‌
选项:
A: 11, 1
B: 11, 0
C: 10, 1
D: 10, 0
答案: 【 11, 0

5、单选题:
‌执行如下代码片段后,num的值为:‍‌int num = 5;‍‌num = (num % 2) == 0 ? num – 1 : num + 1;‍
选项:
A: 1
B: 4
C: 5
D: 6
答案: 【 6

6、单选题:
‌有如下代码段:‏‌if (num >= 0)‏‌    if (num == 0)‏‌        System.out.println("first string");‏‌else ‏‌    System.out.println("second string");‏‌System.out.println("third string");‏‌若num为3,则输出结果为:‏
选项:
A: third string
B: second stringthird string
C: first stringthird string
D: first stringsecond stringthird string
答案: 【 second stringthird string

7、单选题:
‌下列变量名称中,不属于有效Java变量命名的是?‎
选项:
A: $num
B: _int
C: 6nums
D: Jiayou
答案: 【 6nums

8、单选题:
‍对于Java1.7及之后版本,如下不能用于switch的类型是:​
选项:
A: String
B: int
C: char
D: double
答案: 【 double

9、单选题:
‏如下对Java基本类型的描述,错误的是?‌
选项:
A: char占1个字节
B: int 占4个字节
C: short 占2个字节
D: double占8个字节
答案: 【 char占1个字节

10、单选题:
‏如下循环结构中,输出结果与其它三组不一致的一组是:‌
选项:
A: for (int i = 0; i < 10; i++)System.out.println(i);
B: int i = 0;while (i < 10) System.out.println(i++);
C: int i = 0;for (;i < 10;) System.out.println(i++);
D: int i = 0;while (i++ < 10) System.out.println(i);
答案: 【 int i = 0;while (i++ < 10) System.out.println(i);

11、单选题:
‍swap方法定义如下:‏‍public static void swap(int num1, int num2) {‏‍        int temp = num1;‏‍        num1 = num2;‏‍        num2 = temp;‏‍ }‏‍执行如下代码后,‏‍       int num1 = 10;‏‍       int num2 = 5;‏‍       int num3 = 20;‏‍       swap(num1, num2);‏‍       swap(num2, num3);‏‍ num1, num2, num3的值分别为:‏
选项:
A: 10, 5, 20
B: 5, 20, 10
C: 5, 10, 20
D: 20, 5, 10
答案: 【 10, 5, 20

12、单选题:
‎Number类定义如下:‍‎public class Number {‍‎    public int x;‍‎ }‍‎swap方法定义如下:‍‎public static void swap(Number number1, Number number2)‍‎    {‍‎        int temp = number1.x;‍‎        number1.x = number2.x;‍‎        number2.x = temp;‍‎    }‍‎运行如下代码:‍‎        Number number1 = new Number();‍‎        Number number2 = new Number();‍‎        Number number3 = new Number();‍‎        number1.x = 1;‍‎        number2.x = 2;‍‎        number3.x = 3;‍‎        swap(number1, number2);‍‎        swap(number2, number3);‍‎则number1.x, number2.x, number3.x的值分别为:‍
选项:
A: 1, 2, 3
B: 2, 3, 1
C: 3, 2, 1
D: 1, 3, 2
答案: 【 2, 3, 1

13、单选题:
‏假设有boolean变量flag1,flag2,则如下表达式中哪个不能代表异或逻辑?(异或逻辑:如果a、b两个值不相同,则异或结果为true。如果a、b两个值相同,异或结果为false。)‌
选项:
A: flag1 != flag2
B: (flag1 == true && flag2 == false) || (flag1 == false && flag2 == true)
C: !flag1 == flag2
D: (flag1 == true && flag2 == true) || (flag1 == false && flag2 == false)
答案: 【 (flag1 == true && flag2 == true) || (flag1 == false && flag2 == false)

14、单选题:
‏如下关于Java类的说法,错误的是?‌
选项:
A: 对象是类的实例化
B: 可以通过对象访问类变量
C: java文件中只能包含一个类的定义
D: 同一类的不同对象有着相同的类变量
答案: 【 java文件中只能包含一个类的定义

15、单选题:
​如下赋值语句,有编译错误的是?‌
选项:
A: byte b = -127;
B: int i = (byte)512;
C: byte b = 129;
D: byte b = -0; 
答案: 【 byte b = 129;

16、单选题:
‏下列关于main方法的描述中,错误的是?‌
选项:
A: main方法是Java程序的入口
B: main方法格式为public static void main(String[] args) {    //Your code here}
C: B选项中所描述格式中形参args不能更改,如果将args改为arguments则不能编译通过
D: main方法可以被重载
答案: 【 B选项中所描述格式中形参args不能更改,如果将args改为arguments则不能编译通过

17、单选题:
‏Java有“一次编译,到处运行”的说法,此种说法中编译的结果是:‏
选项:
A: 机器码
B: 符号表
C: 字节码
D: 中间代码
答案: 【 字节码

18、单选题:
‌下列不属于Java基本数据类型的是?‌
选项:
A: short
B: float
C: Double
D: int
答案: 【 Double

19、单选题:
​如下关于JDK和JRE的说法,错误的是?‌
选项:
A: JDK全称Java Development Kit,意即Java开发工具包
B: JRE全程Java Runtime Environment,意即Java运行环境
C: JRE中包含了JDK
D: 若只需要运行编译好的Java程序,则只有JRE就可以
答案: 【 JRE中包含了JDK

20、单选题:
‎在Java中,下面对于构造函数的描述正确的是‍
选项:
A: 类必须显式定义构造函数
B: 构造函数的返回类型是void
C: 构造函数和类有相同的名称,并且不能带任何形参
D: 一个类可以定义多个构造函数
答案: 【 一个类可以定义多个构造函数

21、单选题:
‌Assume i and j are member variables with double type in class X. In the following codes, which one is NOT RIGHT constructor? ( )‏
选项:
A: double X(double k ){ i=k; return i; }
B: X(double m, double n ){ i=m; j=n; }
C: X( ){i=6;j=8; }
D: X(double k ){ i=k; }
答案: 【 double X(double k ){ i=k; return i; }

22、单选题:
​Given:​​class CardBoard {​​  Short story = 5;​​  CardBoard go(CardBoard cb) {​​    cb = null;​​    return cb;​​  }​​  public static void main(String[] args) {​​    CardBoard c1 = new CardBoard();​​    CardBoard c2 = new CardBoard();​​    CardBoard c3 = c1.go(c2);​​    c1 = null;​​    // do Stuff​​  } ​​}​​When // doStuff is reached, how many objects of CardBoard are null?​​​
选项:
A: 0
B: 1
C: 2
D: Compilation fails.
答案: 【 2

23、单选题:
‍Given the uncompleted code of a class:‌‍class Person {‌‍    String name, department;‌‍    int age;‌‍    public Person(String n){ name = n; }‌‍    public Person(String n, int a){ name = n; age = a; }‌‍    public Person(String n, String d, int a) {‌‍        // doing the same as two arguments version of constructor ‌‍        // including assignment name=n,age=a‌‍        department = d;‌‍   }‌‍}‌‍Which expression can be added at the "doing the same as..." part of the constructor? ‌
选项:
A: Person(n,a);
B: this(Perso

剩余75%内容付费后可查看

发表评论

电子邮件地址不会被公开。 必填项已用*标注