资源描述
《JAVA程序设计》模拟题 A
一.判断题
1. Java源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。( √)
2. 注释的作用是使程序在执行时在屏幕上显示//之后的内容。 ( )
3. 有的类定义时可以不定义构造函数,所以构造函数不是必需的。 ( )
4. 由继承性可知,程序中子类拥有的成员数目一定大于等于父类拥有的成员数目。 ( )
5. 抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法 ( )
6. java异常处理中可以使用多个catch子句,此时应将高级别异常类的catch子句放在前面。 (√)
7. Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。 (√ )
8. Applet是一种特殊的Panel,它是Java Applet程序的最外层容器。 ( √ )
9. 在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个属性与赋值对象相同的新对象。 ( )
10. System类不能实例化,即不能创建System类的对象。 ( √ )
11. 一个线程对象的具体操作是由run()方法的内容确定的,但是Thread类的run()方法是空的,其中没有内容;所以用户程序要么派生一个Thread的子类并在子类里重新定义run()方法,要么使一个类实现Runnable接口并书写其中run()方法的方法体。( √ )
12. 接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。( )
13. 静态初始化器是在其所属的类加载内存时由系统自动调用执行。 (√)
14. 如果p是父类Parent的对象,而c是子类Child的对象,则语句p=c是正确的。( √ )
15. 所有的鼠标事件都由MouseListener监听接口的监听者来处理 ( √)
二.单项选择题
1.在编写Java Applet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上( D )语句。
A、import java.awt.* ; B、import java.applet.* ;
C、import java.io.* ; D、import java.awt.event.* ;
2. 关于被私有保护访问控制符private protected修饰的成员变量,以下说法正确的是( c )
A、可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
B、可以被两种类访问和引用:该类本身、该类的所有子类
C、只能被该类自身所访问和修改
D、只能被同一个包中的类访问
3. Java application中的主类需包含main方法,main方法的返回类型是什么?( d )
A、int B、float C、double D、void
4. 设有下面两个类的定义:
class Person { class Student extends Person {
long id; // 身份证号 int score; // 入学总分
String name; // 姓名 int getScore(){
} return score;
}
}
则类Person和类Student的关系是( b )。
A、包含关系 B、继承关系 C、关联关系 D、上述类定义有语法错误
5 . 容器Panel和Applet缺省使用的布局编辑策略是( c )
A、FlowLayout B、BorderLayout C、GridLayout D、CardLayout
6. 执行完以下代码int [ ] x = new int[25];后,以下哪项说明是正确的( a )
A、x[24]为0 B、x[24]未定义 C、x[25]为0 D、x[0]为空
7. 编译并运行以下程序,以下描述哪个选项是正确的( a )
1. class X{
2. protected String toString(){
3. return super.toString();}
4. }
A、编译通过运行无异常 B、编译通过但运行时出错 、
C、行2出错,不能成功编译 D、不能成功编译,行3出错
8. 以下哪个不是Java的关键字?( a )
A、FALSE B、const C、this D、void
9. 有程序如下,关于程序的描述哪个是正确的?( c )
public class Person{
static int arr[] = new int[10];
public static void main(String a[])
{ System.out.println(arr[0]); }
}
A、编译将产生错误 B、编译时正确,但运行时将产生错误
C、正确,输出0 D、正确,输出 null
10. 以下声明合法的是( b )
A、default String s; B、public final static native int w( )
C、abstract double d; D、abstract final double hyperbolicCosine( )
11. 关于以下application的说明,正确的是( c )
1. class StaticStuff
2. {
3. static int x=10;
4. static { x+=5;}
5. public static void main(String args[ ]){
6. System.out.println(“x=” + x);
7. }
8. static { x/=3;}
9. }
A、4行与8行不能通过编译,因为缺少方法名和返回类型
B、8行不能通过编译,因为只能有一个静态初始化器
C、编译通过,执行结果为:x=5
D、编译通过,执行结果为:x=3
12. 在使用interface声明一个接口时,只可以使用( a )修饰符修饰该接口。
A、public B、protected C、private protected D、private
13. 关于以下程序代码的说明正确的是( d )
class HasStatic{
private static int x=100;
public static void main(String args[ ]){
HasStatic hs1=new HasStatic( );
hs1.x++;
HasStatic hs2=new HasStatic( );
hs2.x++;
hs1=new HasStatic( );
hs1.x++;
HasStatic.x- -;
System.out.println(“x=”+x);
}
}
A、5行不能通过编译,因为引用了私有静态变量
B、10行不能通过编译,因为x是私有静态变量
C、程序通过编译,输出结果为:x=103
D、程序通过编译,输出结果为:x=102
14. 关于以下程序段,正确的说法是( c )
1. String s1=”abc”+”def”;
2. String s2=new String(s1);
3. if(s1= =s2)
4. System.out.println(“= = succeeded”);
5. if (s1.equals(s2))
6. System.out.println(“.equals() succeeded”);
A、行4与行6都将执行 B、行4执行,行6不执行
C、行6执行,行4不执行 C、行4、行6都不执行
15. 以下说法哪项是正确的( a )
class MyListener
extends MouseAdapter implements MouseListener{
public void mouseEntered(MouseEvent mev){
System.out.println("Mouse entered."); }
}
A、以上代码可通过编译
B、不能通过编译,因为没有实现MouseListener接口中的所有方法
C、不能通过编译,因为类头定义不能分行
D、能通过编译,若组件用该类作为Mouse的监听者并且接收了mouse-exited事件,则在执行过程中会抛出异常
三.程序阅读题
1.阅读以下程序:
import java.io.*;
public class AboutFile{
public static void main(String[ ] args){
BufferedReader b=new BufferedReader (new InputStreamReader(System.in));
String s;
System.out.flush();
s=b.readLine();
System.out.println(“String is:”+s);
}
}
运行以上程序,若从键盘输入:
JAVA<回车>
则输出结果为________String is:JAVA____________。
2.阅读以下程序,输出结果为_______________ 1 2 3___________________。
class C1 {
C1 () {
System.out.print ("1 "); }
}
class C2 extends C1 {
C2() {
System.out.print ("2 "); }
}
public class C3 extends C2 {
C 3() {
System.out.println("3 "); }
public static void main(String[] args) {
C3 c = new C3( ); }
}
3.阅读以下程序,输出结果为______________3____________________。
import java.io.*;
public class ATest{
public static void main(String args[]) {
SubClass sb = new SubClass( );
System.out.println(sb.add( ));
} }
class SuperClass{
int a = 1 , b = 2 ;
}
class SubClass extends SuperClass{
int add( ) { return a+b; }
}
4.以下程序段的输出结果为____ Value is two_value is 2_____________________。
int j=2;
switch ( j ) {
case 2:
System.out.print(“Value is two.”);
case 2+1 :
System.out.println(“Value is three.”);
break;
default:
System.out.println(“value is “+j);
break;
}
5.阅读以下程序:
class AExample{
public static void main(String[ ] args){
String s, s1=””;
char c;
s=args[0];
for( int i=0; i<s.length(); i++){
c=s.charAt(i);
if(c>=’a’&&c<=’z’)
s1=s1+Character.toUpperCase(c);
if(c>=’A’&&c<=’Z’)
s1=s1+Character.toLowerCase(c);
}
System.out.println(s1);
}
若在命令行输入以下命令:
java AExample helloWORLD<回车>
则程序的输出为__________________________________。
6.阅读以下程序段:
class Parent
{
void printMe()
{
System.out.println(“parent”);
}
}
class Child extends Parent
{
void printMe()
{
System.out.println(“child”);
}
void printAll()
{
super.printMe();
this.printMe();
printMe();
} }
public class Test_this
{
public static void main(String args[ ])
{
Child myC=new Child();
myC.printAll();}
}
输出结果为:
7.以下程序段的输出结果为__________________________________。
public class ABC
{
public static void main(String args[ ]){
int i , j ;
int a[ ] = { 2,1,3,5,4};
for ( i = 0 ; i < a.length-1; i ++ ) {
int k = i;
for ( j = i ; j < a.length ; j++ )
if ( a[j]<a[k] ) k = j;
int temp =a[i];
a[i] = a[k];
a[k] = temp;
}
for ( i =0 ; i<a.length; i++ )
System.out.print(a[i]+" ");
System.out.println( );
}
}
参考答案:
解:
1
String is: JAVA
5
HELLOworld
2
1 2 3
6
parent child child
3
3
7
1 2 3 4 5
4
value is two
《Java程序设计》模拟题 B
一、选择题
1.编译Java Applet 源程序文件产生的字节码文件的扩展名为( b )
A、java B、class C、html D、exe
2.若需要定义一个类域或类方法,应使用哪种修饰符?( c )
A、static B、package C、private D、public
3. 什么是J2EE应用文件的扩展?(a)
A、.war B、 .js C、.ear D、.jar
4. main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( b )
A、public static void main( )
B、public static void main( String args[] )
C、public static int main(String [] arg )
D、public void main(String arg[] )
5. 在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( c )语句。
A、import java.awt.* ; B、import java.applet.Applet ;
C、import java.io.* ; D、import java.awt.Graphics ;
6. 下列哪个方法不是HttpServlet类的方法?( c)
A、 Get() B、 Post() C、 Action() D、 Put()
7. 以下方法中哪一个把被约束属性的值中的变化通知给所有的listener beans ?( b)
A、void addPropertyChangeListener() B、PropertyChangeSupport()
C、void firePropertyChange() D、removePropertyChangeListener()
8.下列哪个是合法的Java标识符?( b )
A、Tree&Glasses B、FirstJavaApplet
C、_$theLastOne D、273.5
9.Java Application源程序的主类是指包含有( a )方法的类。
A、main() B、toString() C、init() D、actionPerfromed()
10.使用哪个命令来生成 Stub和Skeleton类?( d )
A、javac <fully qualified class name of the server>
B、java <fully qualified class name of the server>
C、rmic <fully qualified class name of the server>
D、rmi <fully qualified class name of the server>
11.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用( a )个比特位。
A、8 B、16 C、32 D、64
12.用以下方法中哪一个把目标应用作为bean 激活的定制事件的监听者(listener)注册?
A、void addPropertyChangeListener()
B、void addXXXListener()
C、void firePropertyChange()
D、removeXXXListener()
13.对于构造函数,下列叙述错误的是( b )
A、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
B、构造函数的返回类型只能是void型。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
14.关于 JavaBean的以下陈述中哪个为真?( c )
A、你可在目标平台上修改JavaBean 的源代码。
B、你可在目标平台上重编译bean 的 jar文件。
C、执行嵌入在Forte for Java 的bean 的jar 文件所得到的输出与IBM Visual Age IDE的输出是一样的。
D、你可在目标应用中修改JavaBean 的视感。
15.在编写Java Applet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上( d )语句。
A、import java.awt.* ; B、import java.applet.* ;
C、import java.io.* ; D、import java.awt.event.*;
16. servlet函数中哪个方法作为请求的调度程序(dispatcher)?( a )
A、service() B、init() C、ServletResponse() D、ServletRequest()
17.在Java中,开发图形用户界面的程序需要使用一个系统提供的类库,这个类库就是( b )包。
A、java.io B、java.awt C、java.applet D、java.awt.event
18.BDK 的以下窗口中哪一个允许你设置“Our Button” bean 的选项?( c )
A、ToolBox window B、BeanBox window
C、Properties window D、Method Tracer window
19.已知如下代码:
public class Test{
public static void main(String arg[]){
int i = 5;
do {
System.out.println(i);
} while (--i>5)
System.out.println("finished");}}
执行后的输出是什么?( a )
A、 5 Finished B、4 C、6 Finished D、None
20.哪个包包含标签处理程序(tag handler )中实现的接口?( b )
A、javax.servlet.jsp.* B、javax.jsp.servlet .*
C、javax.servlet.tagext D、javax.jsp.tagext
21.给出如下代码:
class Test{
private int m;
public static void fun() {
// some code...
}}
如何使成员变量m 被函数fun()直接访问?( c )
A、将private int m 改为protected int m
B、将private int m 改为 public int m
C、将private int m 改为 static int m
D、将private int m 改为 int m
22.用来执行称为SampleServlet 的servlet 的窗体的代码提供如下:
<html><body>
<form action=”http://127.0.0.1:8000/samplecontext/samplealias>
<input type =submit value=”Query”>
</form></body></html>
当点击Query按钮时,将调用此servlet。此servlet类中哪个方法将被执行?( c )
A、service() 和doGet() 方法将被调用
B、只有doGet()被调用 C、doPost()
D、只有service()方法将被调用,因该方法的名未被提及。
23.已知如下代码:
1: class Example{
2: String str;
3: public Example(){
4: str= "example";
5: }
6: public Example(String s){
7: str=s;
8: }
9:} }
10: class Demo extends Example{
11: }
12: public class Test{
13:public void f () {
14:Example ex = new Example("Good");
15:Demo d = new Demo("Good");
16:} }
哪句语句会导致错误?( d )
A、 line 3 B、line 6 C、line 14 D、line 15
24.当第二次执行此servlet 时,它的输出将是什么? ( c )
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
public class hitcountServlet extends HttpServlet{
static int count=0;
public void init(ServletConfig config)
throws ServletException {
super.init(config);
}
protected void service(HttpServletRequest req,HttpServletResponse resp) throws ServletException, IOException{
count++;
PrintWriter out=resp.getWriter();
out.println(String.valueOf(count));
}
public String getServletInfo(){
return "BasicServlet Information";
}
public void destroy(){
count=0;
}}
A、2 B、0 C、1 D、4
25.为表示描绘动画的文件列表,开发者正在编写一个带索引属性的bean 类。开发者允许用户用文本编辑器来读入和改变其属性。应做什么呢?( b )
A、应重设getAsText()方法。
B、应重设getAsText() 和setAsText()方法。
C、应编写accessor 和 mutator方法。
D、应重设setTags() 和 getTags()方法。
26.请问如下哪个方法可以将MenuBar加入Frame中?( b)
A、 setMenu() B、setMenuBar() C、add() D、addMenuBar()
27.陈述 A: 服务器创建了一个 cookie,并发送给客户。客户把此cookie 保存在本地硬盘中。
陈述 B: 当服务器需要时,客户通过HTTPServletRequest 对象发送cookie 给服务器。
关于陈述A 和B,以下中哪个为真?( c )
A、陈述A为假,陈述 B为真。 B、陈述A为真,陈述 B为假。
C、这二个陈述 都为真。 D、这二个陈述 都为假。
28.下面的语句的作用是:( d )
Vector MyVector = new Vector(100,50);
A、创建一个数组类对象MyVector,有100个元素的空间,每个元素的初值为50。
B、创建一个向量类对象MyVector,有100个元素的空间,每个元素的初值为50。
C、创建一个数组类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增
D、创建一个向量类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
29.关于 JavaBean的以下陈述中哪个为真?( c )
A、可在目标平台上修改JavaBean 的源代码。
B、可在目标平台上重编译bean 的 jar文件。
C、执行嵌入在Forte for Java 的bean 的jar 文件所得到的输出与IBM Visual Age IDE的输出是一样的。
D、可在目标应用中修改JavaBean 的视感。
30. 为说明包含bean 构件,把哪个语句加入到JSP页面?( a )
A、 <jsp : useBean id=”bnkacc” class=”BankAccount”>
B、<jsp : useBean name=”bnkacc” class=”BankAccount”>
C、<jsp : useBean name=”bnkacc” value=”BankAccount”>
D、<jsp : useBean beanName=”bnkacc” value=”BankAccount”>
二、填空题
1. 对于java入口程序public static void main()方法,public,static和void定义的意义分别是什么?(为什么要定义成public static void 形式)
Public:__________公有方法,可被类外部调用
Static:_________静态方法,可不实例化而被类直接调用
Void:___________无返回值_____________
2. 数组x定义如下:
int x[ ][ ]=new int[3][2]
则 x.length 的值为_______3_____,
x[0].length 的值为______2______。
3. 创建类的对象时,使用关键字______new_____给对象分配内存空间。
4. 定义类的构造方法不能有返回值类型,其名称与____类______名相同。
5. 应用程序的main方法中有以下语句,则输出的结果是 ___sum=28_________。
int b[][]={{1, 2, 3}, {4,5}, {6,7}};
int sum=0;
for(int i=0;i<b.length;i++) {
for(int j=0;j<b[i].length;j++) {
sum+=b[i][j];
} }
System.out.println("sum="+sum);
参考答案:
答:1、只有公有的方法才能被访问或调用;
只有静态的方法才能够直接调用;
由于是公共调用的入口方法,无法确认返回值类型。
2、 3; 2。
3、new
4、类
5.28
《JAVA程序设计》模拟题 C
一.判断题
1、Boolen变量值可以是0或1 ( × )
2、在Java中,整型的大小是不固定的。一些编译器使用2字节的整型,而其它编译器则使用4字节 ( × )
3、运算符 ++ 的优先级高于运算符 + ( √ )
4、将Short值赋给Long值是允许的 ( √ )
5、Java中的每个类都至少有一个构造器 ( √ )
6、静态方法可作用于类变量和实例变量 ( × )
7、在同一类中可以有具有以下声明的两个方法:
void method1(int j,int k)和int method2(int k,int j) ( √ )
8、一个类的子类可以是某些其它类的超类 ( √ )
9、当超类引用变量指定为对子类的引用时,只能访问超类中定义的成员 ( × )
10、一个类可以拥有任何数量的超类和子类 ( √ )
二.单项选择题
1. 哪种语言是以对象为特征的开发可视化程序组件的语言?( b )
A. 过程化语言 B. 面向对象的语言
C. 机器语言
展开阅读全文