一、单选择题(每小题2分,共10分)
1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
A. .java B. .class
C. .html D. .exe
2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( )。
A. 3 B. 3. 5
C. 4 D. 5
3、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( )?
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[] )
4、在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( )语句。
A、import java.awt.* ; B、import java.applet.Applet ;
C、import java.io.* ; D、import java.awt.Graphics ;
5、在Java Applet程序用户自定义的Applet子类中,常常重载( )方法在Applet的界面中显示文字、图形和其它界面元素。
A. start( ) B. stop( )
C. init( ) D. paint( )
二、填空题(每空格1分,共20分)
1、开发与运行Java程序需要经过的三个主要步骤为 ()、()和()。
2、 设x = 2 ,则表达式 ( x + + ) * 3 的值是()。
3、 据程序的构成和运行环境的不同,Java源程序分为两大类:()程序和()程序。
4、 一个Java Application源程序文件名为MyJavaApplication.java,如果使用Sun公司的Java开发工具JDK编译该源程序文件并使用其虚拟机运算这个程序的字节码文件,应该顺序执行如下两个命令:()、()。
5、 Java源程序是由类定义组成的,每个程序中可以定义若干个类,但是只有一个类是主类。在Java Application中,这个主类是指包含 ()方法的类;在Java
Applet里,这个主类是一个系统类 ()的子类。
6、 如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是 ()类的子类并且存储该源程序文件的文件名必须为 ()。
7、多态是指 (),在Java中有两种多态,一种是使用方法的 ()实现多态,另一种是使用方法的()实现多态。
8、 在Java程序中,通过类的定义只能实现()重继承,但通过接口的定义可以实现()重继承关系。
9、 字符串分为两大类,一类是字符串常量,使用 ()类的对象表示;另一类是字符串变量,使用()类的对象表示。
10、创建一个标识有“河南广播电视大学”字样的标签对象gxdd的语句为() 。
三、判断题(每小题1分,共10分)
1. Java程序是由若干类定义组成的,类定义包括定义类头和定义类体。( )
2. 有的类定义时可以不定义构造函数,所以构造函数不是必需的。( )
3. 抽象类中的抽象方法必需在该类的子类中具体实现。( )
4. 最终类不能派生子类,最终方法不能被覆盖。( )
5. 一个Java类可以有多个父类。( )
6. 一个Java类可以有一个父类,并实现多个接口。( )
7. 接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。( )
8. 设String对象s="Hi",则语句System.out.println(s.concat("Yohaoo!"))的输出是Hi,Yohaoo! ( )
9. 在Applet中显示一副图像,首先要把它调入内存,保存在一个Image对象中,然后调用drawImage()方法画出这个图像。( )
10.一个Java程序要想获得Internet上的某处资源,首先需要把这个资源的地址用URL类的对象表示出来。( )
四、写出下列程序完成的功能。(每小题5分,共20分)
1、 public class Sum
{
public static void main( String args[ ])
{
int sum = 0 ;
for ( int i = 1 ; i <= 100 ; i + + )
sum += i ;
System.out.println( "sum="+sum );
}
}
2、import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Applet1 extends Applet implements ActionListener
{
Label prompt;
Button btn;
public void init( )
{
prompt=new Label(" ");
btn=new Button("开始");
add(btn);
add(prompt);
btn.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{
if ( e.getSource( )==btn )
prompt.setText("祝您考试及格");
}
}
3、import java.io.*;
public class abc
{
public static void main(String args[])
{
SubClass sb = new SubClass( );
System.out.println(sb.min( ));
}
}
class SuperClass
{
int a = 10 , b = 20 ;
}
class SubClass extends SuperClass
{
int min( )
{
return ((a<b)?a:b);
}
}
4.import java.awt.*;
import java.applet.Applet;
public class DrawMyImage extends Applet
{
Image myImage; // 定义一个图像类Image的对象myImage
public void init( )
{
myImage = getImage(getDocumentBase( ),"pica.jpg");
}
public void paint(Graphics g)
{
g.drawImage(myImage,0,0,this);
}
五、写出下面程序的运行结果(每小题10分,共30分)
1. import java.io.*;
public class abc
{
public static void main(String args[])
{
String s1 = "Hello!";
String s2 = new String("World!");
System.out.println(s1.concat(s2));
}
}
2.import java.io.*;
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 Class1
{
public static void main(String args[ ])
{
Child myC = new Child( );
myC.printAll( );
}
}
3. import java.io.* ;
public class abc
{
public static void main(String args[ ])
{ SubSubClass x = new SubSubClass(10 , 20 , 30);
x.show();
}
}
class SuperClass
{ int a,b;
SuperClass(int aa , int bb)
{ a=aa; b=bb; }
void show( )
{ System.out.println("a="+a+"\\nb="+b); }
}
class SubClass extends SuperClass
{ int c;
SubClass(int aa,int bb,int cc)
{ super(aa,bb);
c=cc;
}
}
class SubSubClass extends SubClass
{ int a;
SubSubClass(int aa,int bb,int cc)
{ super(aa,bb,cc);
a=aa+bb+cc;
}
void show()
{ System.out.println("a="+a+"\\nb="+b+"\\nc="+c); }
}
JAVA语言程序设计》期末考试模拟试题
参考答案及评分标准
一、单选择题(每小题2分,共10分)
1、B 2、A 3、D 4、C 5、A
二、填空题(每空格1分,共20分)
1、编辑源程序、编译生成字节码、解释运行字节码
2、Applet、MyApplet
3、javac.exe、3、 . class
4、2 、2
5、0
6、true 、 false
7、抽象(abstract)方法、最终(final)方法
8、package MyPackage ; 应该在程序第一句。
9、120
10、单、多
三、写出下列程序完成的功能。(每小题5分,共20分)
1、计算 1/1+1/2+1/3+...+1/100 的值。
2、从标准输入(即键盘)读入10个整数存入整型数组a中,然后逆序输出这10个整数。
3、创建一个标题为"按钮"的窗框,窗框中显示有"按下我"字样的按钮。
4、求两个数的最大值。
四、写出下面程序的运行结果(每小题10分,共30分)
1、Hello! I love JAVA.
2、s = 180
3、a=60
b=20
c=30
五、使用Java语言编写程序。(每小题10分,共20分)
1、参考程序如下:
import java.io.* ;
public class abc
{
public static void main(String args[ ])
{ int i , n = 10 , max = 0 , min = 0 , temp = 0;
try {
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
max = min = Integer.parseInt(br.readLine( ));
} catch ( IOException e ) { } ;
for ( i = 2 ; i <= n ; i ++ ) {
try {
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
temp = Integer.parseInt(br.readLine( ));
if (temp > max ) max=temp;
if (temp < min) min=temp;
} catch ( IOException e ) { } ;
}
System.out.println("max="+max+"\nmin="+min);
}
}
2、参考程序如下:
import java.applet.* ;
import java.awt.* ;
public class abc extends Applet
{
Complex a,b,c ;
public void init( )
{
a = new Complex(1,2);
b = new Complex(3,4);
c = new Complex();
}
public void paint(Graphics g)
{
c=a.complexAdd(b);
g.drawString("第一个复数:"+a.toString(),10,50);
g.drawString("第二个复数:"+b.toString(),10,70);
g.drawString("两复数之和:"+c.toString(),10,90);
}
}
class Complex
{
int RealPart ; // 复数的实部
int ImaginPart ; // 复数的虚部
Complex() { RealPart = 0 ; ImaginPart = 0 ; }
Complex(int r , int i)
{ RealPart = r ; ImaginPart = i ; }
Complex complexAdd(Complex a)
{
Complex temp = new Complex( ); // 临时复数对象
temp.RealPart=RealPart+a.RealPart;
temp.ImaginPart=ImaginPart+a.ImaginPart;
return temp;
}
public String toString( )
{ return ( RealPart+" + "+ImaginPart+" i "); }
}
(完)
三、 编程题
1、编写一个程序,用选择法对数组a[]={20,10,50,40,30,70,60,80,90,100}进行从大到小的排序。
育路网