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)