第一部分《Java 程序设计》练习测试[说明]:要求所有答案务必写在答题纸的相应题号位置上,否则不予评分。
一、单选择题(共10分,每小题2分)1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为()。
A .classB .htmlC .javaD .exe2、设int x = 1 , y = 2 , z = 3; 则表达式y+=z- -/++x 的值是() 。
A 3B 3. 5C 4D 53、在Java Applet 程序用户自定义的Applet子类中,一般需要重载父类的()方法来完成一些画图操作。
A start( )B stop( )C in it( )D pai nt()4、不允许作为类及类成员的访问控制符的是()。
A publicB staticC privateD protected5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为()。
A final void method( );B public void method();C static void method( );D abstract void method();二、填空题(共20分,每空格1分)1、开发与运行Java程序需要经过的三个主要步骤为_(1)_、_⑵—和。
2、如果一个Java Applet 源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是一⑷一类的子类并且存储该源程序文件的文件名为一⑸一。
3、如果一个Java Applet 程序文件中定义有4个类,则使用Sun公司的JDK编译器一⑹编译该源程序文件将产生」7)_个文件名与类名相同而扩展名为―⑻― 的字节码文件。
4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用_⑼字节内存空间,这样,无论是中文字符还是英文字符,都是占用_(10)_ 字节内存空间。
5、设int y = 5; 则表达式(y++ )/6 的值是_(11)_ 。
6、若int x = 5,y = 10; 则x<y 和x>= y 的逻辑值分别为_(12) ______ 和_(13)_ 。
7、_(14)_方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。
_(15)_ 方法是不能被当前类的子类重新定义的方法。
8、创建一个名为MyPackage的包的语句是_(16)_,该语句应该放在程序的位置为:_(17)_9、设有数组定义:int a[ ] = { 20 ,30 ,40 ,50 , 60 , 70 , 80,90,100,110,120,130}; 则执行以下几个语句后的输出结果是—(18)—。
int s =0;for( int i =0; i < a.len gth ; i ++)if( i%4==0) s +=a[i];System.out.pri ntl n( s);10、在Java程序中,通过类的定义只能实现_(19)_ 重继承,但通过接口的定义可以实现_(20)_重继承关系。
三、写出下列程序完成的功能。
(每小题5分,共20分) 1、public class Sum{ public static void main( String args[]){ double sum = 0.0 ;int sign=-1.0;for ( int i = 1 ; i <=50; i+=2 ){ sign*=-1;sum += sign/(double) i ;}System.out.println( "sum="+sum );}}2、import java.io.* ;public class Reverse{ public static void main(String args[ ]){ int i , n =10 ;int a[]=new int[20];for ( i = 0 ; i < n ; i ++ )try {BufferedReader br = new BufferedReader( new InputStreamReader(System.in)); a[i] = Integer.parseInt(br.readLine( )); // 输入一个整数} catch ( IOException e ) { } ;For( i = n-1; i >= 0 ; i -- )System.out.print(a[i]+" ");System.out.println( );}}3、import java.awt.*;public class abc{public static void main(String args[]){ new FrameOut(); }}class FrameOut extends Frame //Frame 为系统定义的窗框类{ Button btn;FrameOut( ){ super("JUST ”);btn = new Button("MIS"); setLayout(new FlowLayout( ));add(btn); setSize(300,200);show( );}}4、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 = 25 , b = 70 ; }class SubClass extends SuperClass{ int min(){ return ((a<b)?a:b); }}四、写出下面程序的运行结果( 每小题10 分,共30 分)1、import java.io.*;public class abc{ public static void main(String args[ ]){ AB s = new AB("Hi!","Nice to meet you."); System.out.println(s.toString( ));}} class AB {String s1;String s2;AB( String str1 , String str2 ) { s1 = str1; s2 = str2; } public String toString( ) { return s1+s2;} }2、import java.io.* ; public class abc{ public static void main(String args[ ]){int i , s = 0 ;int a[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , for ( i = 0 ; i <90,100,110,120,130,140,150 };a.length ; i ++ ) if ( a[i]%3 == 0 ) s += a[i] ; System.out.println("s="+s);}}3、import java.io.* ;public class abc{public static void main(String args[ ]){ SubSubClass a1=new SubSubClass(40,50,60);a1.show();SuperClass a2=new SuperClass(70,80); a2.show();}}class SuperClass{int a,b;SuperClass(int aa,int bb){a=aa; b=bb;}public 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;}public void show(){ System.out.println("a="+a+"\nb="+b+"\nc="+c); }}五、使用Java 语言编写程序( 共20 分).创建类Computer ,该类中有一个计算两个数的最大公约数的方法。
如果向该方法传递负整数,该方法就会抛出用户自定义异常。
要求:用户自定义的异常类名为MyException 。
《Java 程序设计》练习测试参考答案及评分标准、单选择题(共10分,每小题2分)、填空题(共20分,每空格1 分)三、程序功能。
(共20分,每小题5分) 1. sum=1-1/3+1/5-1/7+1/9-1/11+…+1/492•从标准输入(即键盘)读入20个整数存入整型数组 a 中,然后逆序输出这 10个整数。
3•创建一个标题为"JUST"的窗框,窗框中显示有"MIS"字样的按钮。
4. 求两个数的最小值。
四、 程序运行结果(共30分,每小题10分)1 Hi!Nice to meet you. 2. s=450 3. a=150b=50 c=60 a=70 b=80五、 用Java 语言编程(共20分)// MyException .java public class MyExcepti on exte nds Exceptio n { String message;public MyException(String ErrorMessagr) { message = ErrorMessagr; }public String getMessage(){ retur nmessage;}// Computer.java⑴_编辑源程序 ________ ⑷ _Applet _________ (6) javac.exe _______ ⑼ 2 _ ⑽_2 _____________ (也) __ 抽象_或 abstract ___(16) package_MyPackage_; ____ (18) 180 ___ (19)_单_⑵_编译生成字节码_ ⑸ _MyApplet ___ ⑺4 ______(11) 0 __ (12) true (15) 最终或final⑶_解释运行字节码 ⑻ class _______(13) false(17) ___应该在程序第一句 _________ (20) _多_public class Computer {public static int getMaxComm(int m , int n) throws MyException{if( m <= 0 ||n<=0){throw new MyException(" 传递的参数不是正整数"); } if(m < n){int temp = 0; temp = m; m = n; n = temp;}int r = m % n;while(r!=0){ m = n; n = r; r = m % n;}return n;}public static void main(String[] args) {try {int m = 122 , n= 0;int result= getMaxComm(m,n);System.out.println(m+" 和"+n+" 的最大共约数是:}"+result);catch (MyException e) { e.printStackTrace();}}}第二部分Java练习题及参考答案:一、选择题:⑴用于设置组件大小的方法是_B_。