计算机二级中选择题是非常重要的,所以开始写一个每日一题的专栏。
答案及解析将在末尾公布!
今日主题:面向对象特性
1、有两个类 A 和 B 的定义如下:
class A{
final int x=10;
public void show(){
System.out.print(x + " ");
}
}
class B extends A {
public void show(){
x=20;
System.out.print(x + " ");
}
}
若定义了类 A 的对象a和类 B 的对象b,则执行语句b.show(); a.show();的结果是
(A) 显示 20 20
(B) 编译错误
© 显示 10 10
(D) 显示 20 10
2、执行下列代码时,产生的异常是
int a =0;
int b=0;
int c = a / b;
(A) ArrayIndexOutOfBoundsException
(B) ArithmeticException
© DividedByZeroException
(D) NullPointerException
3、下列代码段执行后的结果是
String s1 = "abcd";
String s2 = s1;
if (s1 == s2)
System.out.print("==");
else
System.out.print("!=");
s1 = new String("abcd");
char ch[] = {'a','b','c','d'};
s2 = new String(ch);
if(s1 == s2)
System.out.print("==");
else
System.out.print("!=");
(A) ==
(B) != ==
© != !=
(D) == !=
4、下列代码段执行后的结果是
int[][] a = {{1,4,3,2}, {8,6,5,7}, {3,7,2,5}, {4,8,6,1}};
int i,j,k,t;
for(i=0;i<3;i++) {
k=0;
for(j=k+1;j<4;j++)
if(a[i][k] < a[i][j]) k=j;
t = a[i][0];
a[i][0] = a[i][k];
a[i][k] = t;
}
for(i=0;i<4;i++)
System.out.print(a[i][0] + " ");
(A) 1 6 2 1
(B) 2 7 5 1
© 4 8 7 4
(D) 1 8 3 4
5、下列代码段执行后的输出结果是
String s = "BangBangBa!Bang";
int i0, i1, i2;
i0 = s.indexOf('a');
i1 = s.indexOf('g', i0+1);
i2 = s.indexOf("Ba", i1+1);
System.out.println(i2);
(A) 8
(B) 4
© 11
(D) 0
6、异常类InterruptedException的父类是
(A) IOException
(B) AWTException
© RuntimeException
(D) LinkageError
7、类Throwable的直接父类是
(A) RunTimeException
(B) Object
© IOException
(D) AWTException
8、下列关于构造方法的描述中,正确的是
(A) 构造方法的返回类型是void
(B) 构造方法的名字可以随意确定
© 构造方法可以重载
(D) 构造方法是没有参数的
9、下列代码段执行后的输出结果是
String str1 = "1234";
String str2 = str1.replace("34", "43");
System.out.println(str1 + " " + str2);
(A) 1234 1243
(B) 1234 1234
© 1234 3443
(D) 1234 1221
10、下列关于import语句的说法中,错误的是
(A) 所有程序都至少需要一个import语句
(B) 程序中可以包含多个import语句
© import语句必须写在所有类的定义之前
(D) import语句用于引入程序要使用的 Java 类
1、答案:B
解析:类 A 中x是final变量(常量),子类 B 的show()方法试图修改x,导致编译错误。
2、答案:B
解析:整数除以零会抛出ArithmeticException(算术异常)。
3、答案:D
解析:
- 初始
s1和s2指向同一字符串常量,s1==s2为true;- 重新创建
String对象后,s1和s2指向不同对象,==比较地址为false。4、答案:C
解析:外层循环遍历前 3 行,每行寻找最大值并与第一个元素交换,结果为第 0 行最大值 4、第 1 行最大值 8、第 2 行最大值 7、第 3 行不变 4。
5、答案:B
解析:
i0 = s.indexOf('a')→ 索引 1(‘B’ 在 0,‘a’ 在 1);i1 = s.indexOf('g', 2)→ 索引 3(从 2 开始找 ‘g’);i2 = s.indexOf("Ba", 4)→ 索引 4(从 4 开始找 “Ba”)。6、答案:C
解析:InterruptedException继承自Exception,而Exception的父类是Throwable,但选项中最接近的是RuntimeException(同属异常体系)。
7、答案:B
解析:Throwable是所有异常和错误的父类,直接继承自Object。
8、答案:C
解析:
- A 错误:构造方法无返回类型;
- B 错误:构造方法名必须与类名相同;
- C 正确:构造方法支持重载;
- D 错误:构造方法可以有参数(带参构造)。
9、答案:A
解析:replace("34", "43")将字符串中 “34” 替换为 “43”,str1不变(字符串不可变),str2为 “1243”。
10、答案:A
解析:java.lang包缺省自动引入,无需显式import,故并非所有程序都需要import语句。
完整版 PDF(含二级更多题目题库)
点击下载
以上就是本期内容,如有错误请指正!


992

被折叠的 条评论
为什么被折叠?



