1、Java不区分大小写的语言。 (N)
2、Java的源代码中定义几个类,编译结果就生成几个以“.class”后缀的字节码文件。(Y)
3、Java Applet是由的解释器程序来运行的。(N)
4、Java Application是由的解释器程序来运行的。(Y)
5、Java Applet的字节码文件必须嵌入HTML的文件中并由负责解释HTML文件的WWW浏览器充当解释器来解释运行。(Y)
6、Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。(Y)
7、Java源程序是由类定义组成的,每个程序可以定义若干个类,但只有一个类是主类。(Y)
8、Java中数组的元素只能是简单数据类型的量。(N)
9、Vector类中的对象不能是简单数据类型。(Y)
10、Java的String类的对象既可以是字符串常量,也可以是字符串变量。(N)
11、Java中用户自定义的图形界面元素也可以响应用户的动作,具有交互功能。(N)
12、Java的屏幕坐标是以像素为单位,容器的左上角被确定为坐标的起点。(Y)
13、在Java中,并非每个事件类都只对应一个事件。(Y)
14、一个类只能有一个父类,但一个接口可以有一个以上的父接口。(Y)
15、由继承性可知,程序中子类拥有的成员数目一定大于等于父类拥有的成员数目。(N)
16、Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。(N)
17、注释的作用是使程序在执行时在屏幕上显示//之后的内容。(N)
18、Java的字符类型采用的是Unicode编码,但所占字节由具体软硬件环境决定。(N)
19、所有的鼠标事件都由MouseListener监听接口的监听者来处理。(N)
20、Applet是一种特殊的Panel,它是Java Applet程序的最外层容器。(N)
二、填空题
1、根据结构组成和运行环境的不同,Java程序可分为两类:
Java Applet 、
Java application 。
2、类的修饰符分为 abstract 、 public 。
3、程序中定义类使用的关键字是 class ,每个类的定义由类头定义、类体定义两部分组成,其中类体部分包括 属性 、 方法 。
4、Java程序中定义接口所使用的关键字是 interface,接口中的属性都是 静态变量 ,接口中的方法都是 抽象方法 。
5、 Object 是Java程序中所有类的直接或间接父类,也是类库中所有类的父类。
三、选择题
1、下列哪一项不是域的非访问控制符。 ( D)
(A) static (B) final (C) volatile (D) public
2、关于被私有保护访问控制符private protected修饰的成员变量,以下说法正确的是(B )
(A) 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
(B)可以被两种类访问和引用:该类本身、该类的所有子类
(C)只能被该类自身所访问和修改
(D)只能被同一个包中的类访问
3、关于被保护访问控制符protected修饰的成员变量,以下说法正确的是(A )
(A) 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
(B) 可以被两种类访问和引用:该类本身、该类的所有子类
(C) 只能被该类自身所访问和修改
(D) 只能被同一个包中的类访问
4、下列关于修饰符混用的说法,错误的是( D)
(A) abstract不能与final并列修饰同一个类
(B) abstract中不可以有private的成员
(C) abstract方法必须在abstract类中
(D) static方法中能处理非static的属性
5、容器Panel和Applet缺省使用的布局编辑策略是(B )
(A) BorderLayout (B) FlowLayout (C) GridLayout (D) CardLayout
6、以下标识符中哪项是不合法的 (D)
(A) BigOlLong$223 (B) _utfint (C) $12s (D) 3d
7、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( B)
(A) public static void main
(B) public static void main(String[] args)
(C) public static int main(String[] args)
(D) public void main(String args[])
8、行完以下代码int[] x = new int[5];后,以下哪项说明是正确的(A )
(A) x[4]为0 (B) x[4]未定义 (C) x[5]为0 (D) x[0]为空
9、以下代码段执行后的输出结果为( C)
int x=3; int y=8;System.out.println(y%x);
(A) 0 (B) 1 (C) 2 (D) 3
10、以下哪个表达式是不合法的( B)
(A) String x = “Sky”; int y = 5; x += y;
(B) String x = “Sky”; int y = 5; if(x==y){}
(C) String x = “Sky”; int y=5; x=x+y;
(D) String x = null; int y=(x!=null) && (x.length()>0)?x.length:0
11、编译运行以下程序后,关于输出结果的说明正确的是 ( C)
public class Conditional{
public static void main(String args[]){
int x = 2;
System.out.println(“value is “((x<1)?2.2:2));;
}
}
(A) 输出结果为:value is 22.2 (B) 输出结果为:value is 2
(C) 输出结果为:value is 2.0 (C) 编译错误
12、以下声明合法的是( B)
(A) default String s; (B) public final static native int w()
(C) abstract double d; (C) abstract final double hyperbolicCosine()
13、关于以下application的说明,正确的是( C)
1. class StaticStuff
2. {
3. static int x=15;
4. static {x*=3;}
5. public static void main(String args[])
6. {
7. System.out.println(“x=”+x);
8. }
9. static {x/=3;}
}
(A) 4行与9行不能通过编译,因为缺少方法名和返回类型
(B) 9行不能通过编译,因为只能有一个静态初始化器
(C) 编译通过,执行结果为:x=15
(D) 编译通过,执行结果为:x=3
14、关于以下程序代码的说明正确的是( C)
1. class HasStatic{
2. private static int x = 100;
3. public static void main(String args[]){
4. HasStatic hs1 = new HasStatic();
5. hs1.x++;
6. HasStatic hs2 = new HasStatic();
7. hs2.x++;
8. hs1=new HasStatic();
9. hs1.x++;
10. System.out.println(“x = ”+x);
11. }
12. }
(A) 5行不能通过编译,因为引用了私有静态变量
(B) 10行不能通过编译,因为x是私有静态变量
(C) 程序通过编译,输出结果为: x=103
(D) 程序通过编译,输出结果为:x=100
15、以下选项中循环结构合法的是( C)
(A) while(int i<7){
i++;
System.out.println(“i is ”+i);
}
(B) int j=3;
while(j){
System.out.println(“ j is ”+j);
}
(C) int j=0;
for(int k=0;j+k!=10;j++,k++){
System.out.println(“j is ”+j+ “ k is ”+k );
}
(D) int j=0;
do{
System.out.println(“j is ”+j++);
if (j==3){continue loop;}
}while(j<10);
16、类Text1定义如下:(B)
public class Test1{
public float aMethod(Float a, float b){}
***
}
将以下哪种方法插入行 *** 是不合法的。( )
(A) public float aMethod(float a,float b,float c){}
(B) public float aMethod(float c,float d){}
(C) public int aMethod(int a,int b){}
(D) public float aMethod(int a,int b,int c){}
17、创建字符串s: s=new String(“xyzy”);以下哪条语句将改变s( D)
(A) s.append(“a”) (B) s.concat(s)
(C) s.substring(3) (D) 以上语句都不会
18、关于以下程序段,正确的说法是( B)
String s1 = “ac”+ “def”;
Strimg s2 = new String(s1);
if(s1.equals(s2))
System.out.println(“==succeeded”);
if(s1==s2)
System.out.println(“.equals() succeeded”);
(A) 行4与行6都将执行 (B)行44执行,行6不执行
(C) 行6执行,行4不执行 (D) 行4、行6都不执行
19、关于以下代码段的说法正确的是(D )
String s = “abcde”;
StringBuffer s1 = new StringBuffer(“abcde”);
if(s.equals(s1))
s1 = null;
if(s1.equals(s))
s=null;
(A) 第1行编译错误,String的构造器必须明确调用
(B) 第3行编译错误,因为s1与s2有不同的类型
(C) 编译成功,但执行时在第5行有异常抛出
(D) 编译成功,执行过程中也没有异常抛出
20、以下说法哪项是正确的( A)
class MyListener extends MouseAdapter implements MouseListener{
public void mouseEnter(MouseEvent mev){
System.out.println(“Mouse entered.”);
}
}
(A) 以上代码可通过编译
(B) 不能通过编译,因为没有实现MouseListener接口中的所有方法
(C) 不能通过编译,因为类头定义不能分行
(D) 能通过编译,若组件用该类作为Mouse的监听者并且接收了mouse-exited事件,则在执行过程中会抛出异常
21、关于以下程序段的说法,正确的是( A)
1. class MyListener implements
2. ActionListener,ItemListener{
3. public void actionPerformed(ActionEvent ae){
4. System.out.println(“Action”);}
5. public void itemStateChanged(ItemEvent ie){
6. System.out.println(“Item”);
7. }
8. }
(A) 可通过编译
(B) 第2行产生编译错误
(C) 第3行产生编译错误
(D) 第5行产生编译错误
22、通过调用new JList(10,false)创建一个列表,关于该列表的几个说法哪项是错误的。( D)
(A) 该列表不支持复选
(B) 该列表一次可显示10个选项
(C) 根据需要该列表可能有垂直滚动条
(D) 该列表有10个选项
23、以下哪项可能包含菜单条( B)
(A) JPanel (B) JFrame (C) Applet (D) JDialog
24、以下代码完成画线功能,指出所画线的颜色( C)
1. g.setColor(Color.red.green.cyan.yellow);
2. g.drawLine(0,0,100,100);
(A) red (B) green (C) yellow (D) cyan
25、关于以下代码所画图形的说明,正确的是( B)
1.g.setColor(Color.black);
2. g.drawLine(10,10,10,50);
3. g.setcolor(color.red);
4. g.drawRect(100,100,150,150);
(A) 一条40像素长的垂直红线,一个边长为150像素的红色四方形
(B) 一条40像素长的垂直黑线,一个边长为150像素的红色四方形
(C) 一条40像素长的垂直黑线,一个边长为150像素的红色四方形
(D) 一条40像素长的垂直红线,一个边长为150像素的红色四方形
四、程序阅读
1、阅读以下程序,输出结果为 。(21)
class D{
public static void main(String args[])
int d=21;
Dec dec=new Dec( );
dec.decrement(d);
System.out.println(d);
}
classs Dec{
public void decrement(int decMe){
decMe = decMe - 1;
}
}
2、以下程序的输出结果为 。(结果为: Boy)
public class Short{
public static void main(String args[ ]) {
StringBuffer s = new StringBuffer(“Boy”);
if((s.length( )<3)&& (s.append(“男孩”) . equals(“False”)))
;
System.out.println(“结果为: ”+s);
}
}
3、以下程序段的输出结果为 。(Message four)
int x=0,y=4, z=5;
if ( x>2){
if (y<5){
System.out.println(“Message one”);
}
else {
System.out.println(“Message two”);
}
}
else if(z>5){
System.out.println(“Message three”);
}
else {
System.out.println(“Message four”);
}
4、以下程序段的输出结果为 。(two.three.)
int j=2;
switch ( j ) {
case 2:
System.out.print(“two.”);
case 2+1 :
System.out.println(“three.”);
break;
default:
System.out.println(“value is “+j);
break;
}
5、以下程序段的输出结果为 。(int)
class Cruncher{
void crunch( int i ){
System.out.println(“int”);
}
void crunch(String s){
System.out.println(“String”);
}
public static void main(String args[ ]){
Cruncher crun=new Cruncher ( );
char ch=’p’;
crun.crunch(ch);
}
}
6、阅读以下程序,写出输出结果 。(99)
class Q6{
public static void main(String args[ ]){
Holder h=new Holder( );
h.held=100;
h.bump(h);
System.out.println(h.held); }
}
class Holder{
public int held;
public void bump(Holder theHolder){
theHolder.held - -;
}
}
7、阅读以下程序,请写出输出结果 。(true)
public class EqualsMethod {
public static void main(String[] args) {
Integer n1 = new Integer(47);
Integer n2 = new Integer(47);
System.out.println(n1.equals(n2));
}
}下载本文