嘿。老师竟然把考试电子档都发回来了~
测试题(笔试)
Java OO
成都朗沃信息技术有限公司
不定项选择题(50题,每题2分,满分100分,测试时间2小时)
1) |
面向对象的特征有哪些?。(多选)【abd】 |
|
|
a) |
封装 |
|
b) |
继承 |
|
c) |
跨平台 |
|
d) |
多态 |
2) |
下面说法正确的是()。(单选)【d,main方法错】 |
|
|
|
public class A{ static int x; public static void main(String args){ System.out.println(x); } } |
|
a) |
正常执行,什么都不打印 |
|
b) |
正常执行,打印0 |
|
c) |
编译错误 |
|
d) |
编译通过,但运行时有错误 |
3) |
下面不属于基本类型的是(单选)【c】 |
|
|
a) |
Long |
|
b) |
Float |
|
c) |
String |
|
d) |
Boolean |
4) |
下面哪些属于Java的引用数据类型包括()。(多选)【借口,类,数组】【abcd】 |
|
|
a) |
基本数据类型数组 |
|
b) |
接口 |
|
c) |
字符串 |
|
d) |
引用数据类型数组 |
5) |
有一个java文件“Test.java”内容如下: class MM{ public static void main(String[] args){ System.out.println("hello word"); } } 对该文件进行编译和执行的命令为:( )。(单选) |
|
|
a) |
编译: javac Test.java 执行: java Test |
|
b) |
编译: javac Test.java 执行: java MM |
|
c) |
编译: javac Test 执行: java Test |
|
d) |
编译: javac Test.java 执行: java Test.class |
6) |
下面关于Java语言中多态的描述正确的是()。(多选)【134】 |
|
|
a) |
多态是指父类变量可以指向子类对象【S xx=new |
|
b) |
多态是指子类变量可以指向父类对象 |
|
c) |
Java中动态绑定是实现多态的主要手段【调的方法是子类的叫动态绑定】 |
|
d) |
多态是指相同的行为不同的体现。 |
7) |
public class A{ public static void main(String[] args){ int a = 1; switch(a){ case 0: System.out.print("0 "); case 1: System.out.print("1 "); case 2: System.out.print("2 "); break; default: System.out.print("default"); } } } 执行的结果是()(单选)【1】 |
|
|
a) |
1 2 |
|
b) |
1 |
|
c) |
1 2 default |
|
d) |
0 1 2 defalut |
8) |
JAVA中定义一个常量使用什么修饰符()。(单选)【3】 |
|
|
a) |
Public |
|
b) |
Static |
|
c) |
Final |
|
d) |
Friendly |
9) |
在Java中,下列()类不能派生出子类( ) (单选) 【final和构造方法私有的不能写子类】【4】 |
|
|
a) |
public class MyClass{} |
|
b) |
class MyClass{} |
|
c) |
abstract class MyClass{} |
|
d) |
final class MyClass{} |
10) |
下面关于抽象类和接口的说法哪些是错误的()(多选)【124】 |
|
|
|
|
|
a) |
抽象类中只能包括抽象方法,必须写abstract关键字【可具体方法】 |
|
b) |
接口中的方法只能是抽象的,但不能写abstract关键字【可写可不写】 |
|
c) |
接口中的方法只能是public的【写不写都是public】 |
|
d) |
抽象类不能被抽象类继承。 |
11) |
当试图编译并运行下面程序时会出现什么结果()(单选)【3】 |
|
|
|
class A{ public int getNumber(int a){ return a+1; } } class B extends A{ public int getNumber(int a, char c){ return a+2; } public static void main(String[] args){ B b=new B(); System.out.println(b.getNumber(0)); } }【注意参数】 |
|
a) |
编译错误 |
|
b) |
运行错误 |
|
c) |
1 |
|
d) |
2 |
12) |
当编译并运行下面程序时会出现什么结果( )(单选)【2】 |
|
|
|
public class MyAr{ |
|
a) |
编译错误 |
|
b) |
运行错误 |
|
c) |
输出0 |
|
d) |
输出“null” |
13) |
在以下循环中,至少执行一次的循环的是()(单选)【2】 |
|
|
a) |
while |
|
b) |
do……while |
|
c) |
for |
|
d) |
if |
14) |
有代码片断: public static void main(String[] args){ int i=0; while(true){ System.out.print("*"); i++; if(i<3){ break; } } } 执行的结果为( |
|
|
a) |
* |
|
b) |
** |
|
c) |
*** |
|
d) |
死循环,报错 |
15) |
在Java中,如果父类中的某些方法不包含任何逻辑,并且需要由子类重写,应该使用()关键字来声明父类的这些方法。(单选)【3】【抽象方法,需由它的子类实现这个方法】 |
|
|
|
|
|
a) |
final |
|
b) |
static |
|
c) |
abstract |
|
d) |
void |
16) |
有代码片断 int x = 9,y=0; if(x>0){ y = 1; } else if(x>3){ y = 2; } System.out.println(y); |
|
|
a) |
0 |
|
b) |
1 |
|
c) |
2 |
|
d) |
编译错误 |
17) |
下面关于构造方法的说法正确的是()(多选)【12】 |
|
|
a) |
构造方法不能被继承 |
|
b) |
构造方法不能被重写 |
|
c) |
构造方法不能被重载 |
|
d) |
构造方法不能声明为private |
18) |
有以下代码片段: double x = 0.2; int y = 8; System.out.println((int)x*y); 执行结果是( |
|
|
|
|
|
a) |
0 |
|
b) |
1 |
|
c) |
2 |
|
d) |
编译错误 |
19) |
在Java中,下面关于抽象类的描述正确的是()(多选)【24】 |
|
|
|
|
|
a) |
抽象类可以被实例化 |
|
b) |
如果一个类中有一个方法被声明为抽象的,那么这个类必须是抽象类 |
|
c) |
抽象类的方法都必须是抽象的 |
|
d) |
声明抽象类必须带有关键字abstract |
20) |
给定如下java代码程序片断: class A{ public A(){ System.out.print(“A”); } }
class B extends A{ public B(){ System.out.print(“B”); }
public static void main(String[] args){ B b=new B(); } } 上述程序将()(单选)【2】 |
|
|
a) |
不能通过编译 |
|
b) |
通过编译,输出为AB |
|
c) |
通过编译,输出为BA |
|
d) |
通过编译,输出为B |
21) |
public static int test(int a,int b){ int c = a+b; a = 8; b = 9; return c; } public static void main(String[] args){ int a = 3,b = 4; int c = test(a,b); System.out.print(a+" "+b+" "+c); } 以上代码输出结果为( )(单选)【3】 |
|
|
|
|
|
a) |
8 9 17 |
|
b) |
8 9 7 |
|
c) |
3 4 7 |
|
d) |
3 4 17 |
22) |
在JAVA中,按东南西北中指定组件位置的布局管理器是()(单选) 【3】 |
|
|
|
|
|
a) |
FlowLayout 【流,循环,流动,流式布局】 |
|
b) |
GridLayout 【格子】 |
|
c) |
BorderLayout 【边框布局】 |
|
d) |
CardLayout |
23) |
当编译和运行下面程序时,哪项描述可以最准确的表达发生了什么事情( )(单选)【2】 |
|
|
|
public class MyAr{ public void amethod(){ } |
|
a) |
编译通过,并输出0 |
|
b) |
编译错误 |
|
c) |
编译通过,并输出null |
|
d) |
运行错误 |
24) |
给定JAVA代码如下,编译运行后,输出结果是()(单选)【3】 |
|
|
|
public class Test{ static int i; public int test(){ i++; return i; } public static void main(String args[]){ Test test=new Test(); test.test();【1】 System.out.println(test.test());【2】 }【执行了2次test.test】 } |
|
a) |
0 |
|
b) |
1 |
|
c) |
2 |
|
d) |
3 |
25) |
给定JAVA代码如下,关于super的用法,以下描述正确的是( )(单选)【4】 |
|||
|
|
class C extends B { public C() { super(); } } |
||
|
a) |
用来调用类B中第一个出现的构造方法 |
||
|
b) |
用来调用类C中定义的super()方法 |
||
|
c) |
用来调用类B中定义的
|