JAVA复习题有答案.doc
复习题一、选择题1、以下Java标志符中合法的是: A H3_sum B -name C student# D 9_Hello1232.Java源文件和编译后的文件扩展名分别为 A. .class和.java B.3对于同一消息,对象可以产生不同的行为,这称为类的什么特性? A继承性 B封装性 C多态性 D抽象性4、用来引入包语句的关键词是: Aimport Babstract Cpackage Dextends5对于小程序,当离开包含Applet的主页后又再返回时将调用 方法。Astart( ) Binit( ) Cdestroy( ) Dstop( )6.以下对Java中的继承描述错误的说法是 只能有一个父类父类C.子类可以访问父类的私有属性7哪种循环在条件表达式被计算之前至少执行循环体语句一次?( )Ado-while循环 Bfor循环 Cwhile循环 D以上都不是8.定义数组String a="ab","abc","abcd","abcde",数组中a1指的是 。A.abB.abc9如果希望组件从左往右,从上到下自动布局界面,应使用哪种布局? A没有 BBorderLayout CFlowLayout DGridLayout 10.以下说法正确的选项是 A. 最终类在特殊情况下可以有子类 B. 抽象类只能有一个子类C. 多态可以通过方法重写和方法重载实现 D. 抽象类不可以声明成员变量和成员方法,只能声明抽象方法11以下语句中访问类的方法正确的选项是: A B( ) Cbook->name Dbook_name12以下选项中哪个是类Pen的构造方法 Apublic void Pen() Bpublic static Pen() Cpublic Pen() Dpublic static void Pen() 13.单击菜单触发的事件是? A. ActionEvent B.ItemEvent C.MouseEvent D. KeyEvent14关于try/catch/finally构造的异常捕获和处理,说法错误的选项是 Atry局部是必须的 Bcatch局部也是必须的C可以有多个catch局部 Dfinally局部也是必须的15、下面关于JDBC描述错误的选项是( )。AJDBC由一组用Java编程语言编写的类和接口组成。BJDBC程序能够自动地将SQL语句传递给相应的数据库管理系统。CJDBC API只能支持数据库访问的两层模型。DJDBC是一种底层API,它可以直接调用SQL语句,也是构造高级API和数据库开发工具的根底。16、用来声明包语句的关键字是 17、Java中参数分为 。A.形参和实参 B.私有和公有参数 C.根本类型和指针类型D. 类和对象18、Java程序中,使用import、class和package的正确顺序是 。A.package、import、classB. import、package、class C. class、import、packageD.package、class、import19、容器被重新设置大小后,哪个布局管理器的容器中组件大小不随容器的大小变化而变化?( )A.CardLayout B.BorderLayout C. FlowLayout D.GridLayout20、以下哪个不是Java的根本数据类型 A.int B.Boolean C.float D.char21、方法组成分为 A.声明局部和方法体局部 B.类和对象局部 22、访问修饰符 表示类中的一个方法或类是私有的。A. private B.23、下面关于Applet的说法正确的选项是 A.Applet也需要main方法 B.Applet必须继承自java.awt.Applet C.Applet能访问本地文件 D.Applet程序不需要编译24、paint()方法使用哪种类型的参数 A.Graphics 25、以下哪个选项是创立一个标识有“关闭文本框的语句? A. JTextField b=new JTextField(“关闭); B. JTextArea b=new JTextArea(“关闭); C. JButton b=new JButton(“关闭); D. JCheckBox b=new JCheckBox(“关闭); 26、为了让用户能够通过选择输入学生性别,使用选择组件的最正确选择是 A. JComBox B. JCheckbox C.JRadioButton D. JList27、以下程序将百分制成绩转换成五分制成绩。五分制成绩分为A、B、C、D、E,分别对应百分制成绩:90-100,80-89,70-79,60-69,0-59。请将此程序补充完整。import javax.swing.*;public class xiti4_3_1Ifpublic static void main(String args)double score=0.0;score=Double.parseDouble(JOptionPane.showInputDialog("请输入百分制的成绩",new Double(score);if(score>100)System.out.println("请您输入有效的百分制成绩0-100");else if( score>=90 )System.out.println("A");else if( score>=80 )System.out.println("B");else if( score>=70 )System.out.println("C");else if(score>=60)System.out.println("D");else if(score>=0)System.out.println("E");elseSystem.out.println("请您输入有效的百分制成绩0-100");28、下述代码是一个计算立方的Java Applet程序程序,在文本框中输入一个数,单击确定按钮,标签中显示这个数的立方。请将此程序补充完整。import java.applet.*;import java.awt.*;x.swing.*;import java.awt.event.*;public class AppletInOut extends Applet implements ActionListener JTextField in = new JTextField(6); JButton btn = new JButton("确定"); JLabel out = new JLabel(" "); public void init() setLayout(new FlowLayout(); add( in ); add( btn ); add( out ); btn.addActionListencer(this);/为按钮btn注册事件监听器 public void actionPerformed ( ActionEvent e )/按钮单击事件响应代码 String s = in.getText(); double d = Double.parseDouble( s ); double q = Math.pow(d,3); /计算d的立方 out.setText( d + "的立方是:"+q); 29、下述代码是一个判断闰年的Java Applet程序程序,在文本框中输入年份,单击判断按钮,标签中显示判断结果。请将此程序补充完整。import java.applet.*;import java.awt.*;import java.swing.*;import java.awt.event.*;public class LeapyearTest extends Applet implements ActionListener JLabel result; JTextField t1; JButton btn; int year; boolean leap; public void init() result=new JLabel("请输入要判断的年份"); t1=new JTextField(5); btn=new JButton("判断"); add(t1); add(btn); add(result); btn.addActionListencer(this); public void actionPerformed(ActionEvent e) year=Integer.parseInt(t1.getText(); if( year%4=0&&year%100!=0 ) leap=true; else if (year%400=0) leap=true; else leap=false; if(leap=true) result.setText(year+"年是闰年"); else result.setText(year+"年不是闰年"); t1.setText(" "); 31请解释Java中事件、事件源、事件监听器的概念,并说明事件监听类可以通过哪几种方法构造。32什么是异常?并举例说明。33.在一个循环中使用break,continue和return有什么不同? 34.Applet的生命周期经历哪四种状态?分别对应哪4个方法? 35.什么是类?什么是对象?对象和类是什么关系? 36.简述封装的概念和封装的意义。37.简述多态的概念和多态的意义。38.Swing组件中具有选择功能的组件有哪些?各有何特点? 39简述创立下拉式菜单的步骤。40public class Casepublic static void main(String args)float x = 11;float y = 4;int z = (int) ( x/y ) ;switch ( z )case 1: x = x+1 ;case 2: x = x+2 ;default : x = x+3 ;System.out.println(“Value of x : + x );输出结果为 。 41、class RectConstructordouble length;double width;RectConstructor(double a,double b) length = a; width = b;double area() return length * width;class RectDemo public static void main(String args) RectConstructor rect1 = new RectConstructor(5,10); RectConstructor rect2 = new RectConstructor(2,4);double ar;ar = rect1.area(); System.out.println("The First Area : " + ar);ar = rect2.area(); System.out.println("The Second Area: " + ar);输出结果为 。 42public class Practicepublic static void main (String args) int i=0,j=1;if(i+=1)|(j+=2)i=4;System.out.println(“i=+i+,j=+j);输出结果为:i= ,j= 43. import java.io.* ;public class DemoJava public static void main(String args ) int i , s = 0 ;int a =1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9,10,11 ,12 ; for ( i = 0 ; i < a.length ; i + ) if ( ai%3 = = 0 ) s += ai ; System.out.println("s="+s); 输出结果为 。44. class Parent void printMe( ) System.out.println(父类); class Child extends Parent void printMe( ) System.out.println(“子类); void printAll( ) super.printMe( ); this.printMe( );printMe( ); public class Testpublic static void main(String args ) Child myC=new Child( ); myC.printAll( ); 运行结果为: 45.public class ForDemo public static void main(String args)int i,k;for(k=2;k<=10;k+)for(i=2;i<k;i+)if(k%i= =0)break;if(i= =k)System.out.print (k+ );输出结果为 。46设计一个类CalcuSum,计算并输出130中所有奇数的和。提示:用for循环或者While循环实现均可。47编写一个类名为MyApplet,分行显示自己姓名、性别、地址和 的Applet程序,背景设为蓝色blue。48编写一个类名为Formula,求解一元二次方程根的图形用户界面应用程序,程序运行界面如以下图所示。49.编写一个Application程序,实现随机生成10个不大于100的整数,并求其平均值。求解一元二次方程根的图形用户界面提示:对于一元二次方程,如果b*b-4*a*c>=0,那么:xl=(-b+Math.sqrt(b*b-4*a*c)/2*a; x2=(-b-Math.sqrt(b*b-4*a*c)/2*a;否那么:无实根。