第一章 Java概述

第一章测验 java初识

1、单选题:
Java编译器将源代码翻译成的独立于平台的格式是:
选项:
A: opcodes 
B: bytecodes(字节码)
C: virtual machines(虚拟机)
D: applets(小应用程序)
答案: 【 bytecodes(字节码)

2、单选题:
运行Java编译器的命令是什么?
选项:
A: java
B: appletviewer
C: jdb
D: javac
答案: 【 javac

3、单选题:
下面哪条命令用来运行Java applicaiton?
选项:
A: java
B: appletviewer      
C: jdb
D: javac
答案: 【 java

4、单选题:
可以用来创建Java程序的免费工具集被称做什么?
选项:
A: JRE
B: JDK
C: JVM
D: JNI
答案: 【 JDK

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

前四章 单元测验

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(Person(n,a));
C: this(n,a);
D: this(name,age);
答案: 【 this(n,a);

24、单选题:
‎Given the following class ‎‎class MyNumber‎‎{‎‎   private int num = 5;‎‎   public MyNumber(int num) { this.num = num; }‎‎   public int getNum() { return num; }‎‎   public void setNum(int num) { this.num = num; }‎‎}‎‎   What is output after the executation of following code? ‎‎   MyNumber obj1 = new MyNumber();‎‎   MyNumber obj2 = new MyNumber(10);‎‎   obj2 = obj1;‎‎   obj2.setNum(20);‎‎   System.out.println(obj1.getNum() + “,” + obj2.getNum());‎‎‎
选项:
A: 5, 20
B: 5, 10
C: 20,20
D: 编译错误
答案: 【 编译错误

25、单选题:
​Given the following class:‍​class Mixer {‍​    Mixer() { }‍​    Mixer(Mixer m) { m1 = m; }‍​    Mixer m1;‍​‍​    public static void main(String[] args) {‍​        Mixer m2 = new Mixer();‍​        Mixer m3 = new Mixer(m2);  m3.go();‍​        Mixer m4 = m3.m1;  m4.go();‍​        Mixer m5 = m2.m1;  m5.go();‍​    }‍​    ‍​    void go() { System.out.print("hi "); }‍​}‍​‍​What is the result?‍
选项:
A: Compilation fails
B: hi hi hi
C: hi hi, followed by an exception
D: hi, followed by an exception
答案: 【 hi hi, followed by an exception

第五章 继承、接口和抽象类

第五章 单元测验

1、单选题:
现有‌‍    public class Parent{‌‍        public void change (int x){‌‍        }‌‍    }‌‍    public class Child extends Parent{‌‍    //覆盖父类change方法‌‍   }‌‍下列哪个声明是正确的覆盖了父类的change方法?‌‍‌
选项:
A: protected void change (int x){}
B: public void change(int x,  int y){}
C: public void change (int x){}
D: public void change (String s){}
答案: 【 public void&nb

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

发表评论

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