一、单项选择题
1.Java是从()语言改进重新设计.
A。Ada B。C++ C。Pasacal D。BASIC
答案:B
2。下列语句哪一个正确()
A. Java程序经编译后会产生machine code
B。 Java程序经编译后会产生byte code
C。 Java程序经编译后会产生DLL
D.以上都不正确
答案:B
3。下列说法正确的有()
A。 class中的constructor不可省略
B. constructor必须与class同名,但方法不能与class同名
C。 constructor在一个对象被new时执行
D。一个class只能定义一个constructor
答 案:C
详解: 见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。
package net。study;
public class TestConStructor
{
public TestConStructor()
{
System.out。println("constructor”);
}
public void TestConStructor()
{
System.out。println("not constructor");
}
public static void main(String[] args)
{
TestConStructor testConStructor = new TestConStructor();
System。out.println("main");
testConStructor。TestConStructor();
}
}
4.提 供Java存取数据库能力的包是()
A。java。sql B。java.awt C。java.lang D.java.swing
答案:A
5.下 列运算符合法的是()
A。&& B.〈> C.if D.:=
答案:A
详解:
java 中没有<> := 这种运算符, if else不算运算符
6.执行如下程序代码
a=0;c=0;
do{
——c;
a=a-1;
}while(a>0);
后,C的值是()
A。0 B.1 C.—1 D。死循环
答 案:C
详解:
Do while 中的语句是至少要执行一次的。 执行顺序为:do 中的语句,然后价差while条件,如果为false,则终止;如果为true,则继续执行Do中的语句,然后再检查while条件,如此循环。
7.下列哪一种叙述是正确的()
A. abstract修饰符可修饰字段、方法和类
B。抽 象方法的body部分必须用一对大括号{ }包住
C.声明抽象方法,大括号可有可无
D。声明抽象方法不可写出大括号
答案:D
详解:
abstract不能修饰字段。既然是抽象方法,当然是没有实现的方法,根本就没有body部分.
8。下列语句正确的是()
A。形式参数可被视为local variable
B。形式 参数可被字段修饰符修饰
C。形式参数为方法被调用时,真正被传递的参数
D。形式参数不可以是对象
答案:A
详解:
形参可以看成方法中的局部变量。 传递的是对象引用
9。下列哪种说法是正确的()
A。实例方法可直接调用超类的实例方法
B.实例方法可直接调用超类的类方法
C.实例方法可直接调用其他类的实例方法
D。实例方法可直接调用本类的 类方法
答案:D
二、多项选择题
1.Java程序的种类有()
A.类 (Class) B.Applet C.Application D.Servlet
2。下列说法正 确的有()
A。 环境变量可在编译source code时指定
B。在编译程序时,所能指定的环境变量不包括 class path
C. javac一次可同时编译数个Java源文件
D。 javac.exe能指定编译结果要置于哪个目录(directory)
答案:BCD
3.下列标识符不合法的有 ()
A。new B。$Usdollars C.1234 D。car。taxi
答案:ACD
解释:
java 变量命名规则:1. 大小写有别,例如 a 和 A是两个变量 2。 长度任意 3. 可以任何字母开始,另外还可以以"_”和”$"开始,一般”$”是很多代码生成器用的,人工写出来的代码不鼓励"_" "$" 4. 除了第一个字符,后面可以跟任何字母,数字,_和$
new 是关键字不行。 不能以数字开头。 不用有“."这种符号
4。下列说法错误的有()
A.数组是一种对象
B。数组属于一种原生类
C. int number=[]={31,23,33,43,35,63}
D.数组的大 小可以任意改变
答案:BCD
解释:
数组不是原生类:int double boolean float byte short long char ,初始化多大就是多大
5.不能用来修饰interface的有()
A。private B.public C。protected D。static
答案:ACD
解释:
interface 是public的, 加不加都是public
6.下列正确的有()
A。 call by value不会改变实际参数的数值
B。 call by reference能改变实际参数的参考地址
C. call by reference不能改变实际参数的参考地址
D. call by reference能改变实际参数的内容
答案:ACD
7。下列说法 错误的有()
A。在类方法中可 用this来调用本类的类方法
B。在类方法中调用本类的类方法时可直接调用
C.在类方法中只能调用本类中的类方法
D.在类方法中绝对不能调用实例方法
答案:CD
解释:
原来答案中包含A,但是在 JDK1。5中,这样写是不会出错的,只不过会有警告而已。类方法中当然可以条用其它的方法,比如system.out 。 当然你也可以new Object,调用一下object。toString()
8。下列说法错误的有()
A。 Java面向对象语言容许单独的过程与函数存在
B。 Java面向对象语言容许单独的方法存在
C. Java语言中的方法属于类中的成员(member)
D. Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同
答案:ABC
解释:
java全部完全面向对象的
9。下列说法错误的有 ()
A.能被java。exe成功运行的java class文件必须有main()方法
B。 J2SDK就是Java API
C。 Appletviewer.exe可利用jar选项运行.jar文件
D.能被 Appletviewer成功运行的java class文件必须有main()方法
答案:BCD
解释:
A正确main方法是入口 BJ2SDK当然不仅仅包含java API C jar选项是java。exe 的选项 D Appletviewer是运行applet的, applet 不用main方法,继承applet类即可。
三、判断题
1.Java程序中的起始类名称必须与存放该类的文件名相同。()
答案:正确
2.Unicode是用16位来表示 一个字的。()
答案:正确
3.原生类中的数据类型均可任意转换。()
答案:错误
1.分别写出BOOL,int,float,指针类型的变量a 与“零”的比较语句.
答案:
BOOL : if ( !a ) or if(a)
int : if ( a == 0)
float : const EXPRESSION EXP = 0。000001
if ( a < EXP && a 〉—EXP)
pointer : if ( a != NULL) or if(a == NULL)