一、单选题(每小题1分,共30分) 1.在MyEclipse中,( )视图可以将项目中包含的文件及层次结构展示出来。C A) Package B)Declaration C)Navigator D) Console 2.下列标识符中,正确的是( )。C
A)class B) 123_rr C) _lei D) test&12
3.下列的( )选项可以正确用以表示八进制值8。0x代表16进制,0代表8进制 D A)0x8 B)0x10 C)08 D)010 4.以下哪个不是Java的原始数据类型( )D A) int B) boolean C) float D) Char引用数据类型 5.下列有关Java布尔类型的描述中,正确的是( )A A)一种基本的数据类型,它的类型名称为boolean B)用int表示类型
C)其值可以赋给int类型的变量 D)有两个值,1代表真,0代表假
6.在Java中,不属于整数类型变量的是( ) A
A) double 浮点型 B) long C) int D) byte 7.以下do-while语句构成的循环执行次数是( )。B
int k=0;
do { ++k ;}while(k<1); A) 一次也不执行 B) 执行1次 C) 无限次 D) 有语法错误,不能执行 8.表达式(1/0<1)&& (12==0) 的值为( )。逻辑运算结果只有true和false两种 B A) true B) false C) 0 D) 运行时抛出异常 9.以下( )表达式不可以作为循环条件 A
A) i=5 B )i<3 C) count==i D) bEqual=str.equals(\10.下列数组初始化正确的是( ) D A) int score[5] = {90,12,34,77,56}; B) int[5] score = new int[];
C) int[] score = new int[5]{90,12,34,77,56}; D) int score[] = new int[]{90,12,34,77,56}; 11.若有定义:byte[] x={11,22,33,-66};
其中0≤k≤3,则对x数组元素错误的引用是( ) C A) x[5-3] B) x[k] C) x[k+5] D) x[0] 12.以下代码的输出结果是()。 D
public static void main(String[] args){
for(int i=1;i<=10;i++){ if(i%2==0||i%5==0){ continue; }
System.out.print(i + \}
} A) 1 B) 1 3 4 C) 1 3 5 7 9 D) 1 3 7 9 13.下列( )选项的java源文件代码片段是不正确的。 B A) package testpackage; B) import java.io.* ;
public class Test{} package testpackage;
第1页 共3页
public class Test{}
C) import java.io.* ; D) import java.io.* ; class Person{} import java.awt.* ; public class Test{} public class Test{}
14.为了在当前程序中使用包ch4中的类,可以使用的语句是( )。 A A) import ch4.*; B) package ch4.*; C) import ch4; D) package ch4; 15.下面说法中不正确的是:( ) C
A) 类是对象的抽象,对象是类的实例 B) 类是组成java程序的最小的单位
C) java语言支持多继承 单 D) java一个程序中只能有一个public类 16.对于下面的不完整的类代码,下面表达式中,( )可以加到构造方法中的横线处。 C
class person{
String name,department;
public void person(String n){ name=n; }
public person(String n,String d){ _______________ department=d; }
}
person p = new person(“jim”);
person p = new person(“jim”,”jsjx”);
A)person(n) B)this(person(n)) C)this(n) D)this(n,a); 17.构造方法何时被调用?( ) B
A)类定义时 B)创建对象时 C)调用对象方法时 D)使用对象的变量时
18.定义一个类名为“MyClass.java”的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为 ( )。C
(A)private class MyClass extends Object (B)class MyClass extends Object (C)public class MyClass
(D)private class MyClass extends Object 19.方法重载是指 ( ) A
(A)两个或两个以上的方法取相同的方法名,但形参的个数或类型不同
(B)两个以上的方法取相同的名字和具有相同的参数个数,但形参的类型可以不同 (C)两个以上的方法名字不同,但形参的个数或类型相同
(D)两个以上的方法取相同的方法名,并且方法的返回类型相同
20.如果编写一个main()方法调用HelloAccp类的show()方法,其运行结果是( )。A
public class HelloAccp{
int a=100,b=50; public void avg(){ float c=(a+b)/2; }
public void show(){
System.out.println(\平均值为:“ + c); }
第2页 共3页
}
A)存在错误,提示:无法解析c B)平均值为:75 C)平均值为:75.0
D)存在错误,提示:无法将数据类型int转换为float 21.对于下列代码: 1) class Person {
2) public void printValue(int i, int j) {//... } 3) public void printValue(int i){//... }
4) }
5) public class Teacher extends Person { 6) public void printValue() {//... } 7) public void printValue(int i) {//...} 8) public static void main(String args[]){ 9) Person t = new Teacher(); 10) t.printValue(10); 11) } 12) }
第10行语句将调用哪行语句?( ) D
A) line 2 B) line 3 C) line 6 D) line 7 22.阅读下面代码:
class parent{
protected int addvalue(int a,int b){ int s; s=a+b; return s; }
}
class child extends parent{ }
若要在child类中对addvalue方法进行重写,下面对于child类中的addvalue方法头的描述()是正确的。D
A)int addvalue(int i,int j) B)void addvalue()
C)void addvalue(double i) D)public int addvalue(int a,int b) 23.下列哪个类声明是正确的( ) D A) abstract final class H1{?} B) abstract private move(){?}
C) protected private number; D) public abstract class Car{?} 24.Java中所有类的父类是 D
A)Father B)Lang C)Exception D)Object 25.编译如下Java代码,输出结果是()。B
class Base{
public void method(){
System.out.print(\}
}
class Child extends Base{ public void method(){
System.out.print(\
第3页 共3页
}
}
class Sample{
public static void main(String[] args){ Base base=new Child(); base.method(); }
}
A) Base method B) Child method C) Base method Child method D) 编译错误
26.下列Java代码中Test类中的四个输出语句的输出结果依次是()。C
class Person{ String name=\public void shout(){ System.out.print(name); }
}
class Student extends Person{ String name=\String school=\
}
class Test{
public static void main(String[] args){ Person p=new Student();
System.out.print(p instanceof Student); System.out.print(p instanceof Person); System.out.print(p instanceof Object); System.out.print(p instanceof System); }
}
A) true、false、true、false B) false、true、false、true
C) true、true、true、编译错误 D) true、true、false、编译错误 27.以下关于接口的说法中,正确的是()。 D
A) 接口中全部方法都是抽象方法,方法可以是任意访问权限
B) 接口中属性都是使用public static final修饰,没有显式赋值将使用默认值 C) 接口可以有构造方法
D) 接口表示一种约定,接口表示一种能力,接口体现了约定和实现相分离的原则 28.给定如下Java代码,可以填入横线处的语句是()。C
public interface Constants{ int MAX = 50; int MIN = 1;
}
public class Test{
public static void main(String[] args){ _________________ }
第4页 共3页
}
A) Constants con = new Constants(); B) Constants.MAX = 100; C) int i = Constants.MAX-Constants.MIN ; D) Constants.MIN>0; 29.请问所有的异常类皆继承哪一个类?( )。C
A)java.io.Exception B)java.lang.Throwable C)java.lang.Exception D)java.lang.Error 30.对于catch子句的排列,下列哪种是正确的( ) B
A)父类在先,子类在后 B)子类在先,父类在后 C)有继承关系的异常不能在同一个try程序段内 D)先有子类,其他如何排列都无关
二、填空题(每空2分,共20分)
1.Java有___JavaSE________、___ JavaEE _________和JavaME三个版本。
2.Java 源程序文件编译后产生的文件称为__字节码__________文件,其扩展名为___.class________。
3.面向对象编程的三大特性是__封装__________、_____继承________和多态。
4.____抽象(或abstract)_______方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。_____final______方法是不能被当前类的子类重新定义的方法。
5.子类必须通过__super_____关键字调用父类有参数的构造函数。
6.在Java程序中,通过类的定义只能实现单重继承,但通过_____接口 _______ 的定义可以实现多重继承关系。
三、阅读理解题(每题4分,共20分)
1.下列程序段的运行结果为______6________。 int a=1; while(a<5){
switch(a){
case 0:
case 3:a=a+1; case 1:
case 2:a=a+2; } }
System.out.print(a);
2.下列程序段的运行结果为_____1 4 9 total is 14_________。 class test1{
public static void main(String args[]) { int y,x=1,total=0; while(x<=3){ y=x*x;
System.out.println(y); total+=y; ++x; }
System.out.println(\}
}
3.下列程序段的运行结果为_____10.0_________。
第5页 共3页