1、JAVA复习题Java语言程序设计复习题 一、 判断题1Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。2对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。3有的类定义时可以不定义构造函数,所以构造函数不是必需的。4类及其属性、方法可以同时有一个以上的修饰符来修饰。5Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点. 6抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。7final类中的属性和方法都必须被final修饰符修饰。8最终类不能派生子类,最终方法不能被覆盖。9子类要调用父类的方法,必须使
2、用super关键字。10一个Java类可以有多个父类。11如果p是父类Parent的对象,而c是子类Child的对象,则语句c = p是正确的。12一个类如果实现了某个接口,那么它必须覆盖该接口中的所有方法。13当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。14接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。15用“+”可以实现字符串的拼接,用- 可以从一个字符串中去除一个字符子串。16使用方法length( )可以获得字符串或数组的长度。17设String对象s=”Hello ”,运行语句System.out.println(s
3、.concat(“World!”);后String对象s的内容为”Hello world!”,所以语句输出为Hello world! 18创建Vector对象时构造函数给定的是其中可以包容的元素个数,使用中应注意不能超越这个数值。 19所有的鼠标事件都由MouseListener监听接口的监听者来处理。20一个容器中可以混合使用多种布局策略。 21Java中,并非每个事件类都只对应一个事件。22一个线程对象的具体操作是由run()方法的内容确定的,但是Thread类的run()方法是空的,其中没有内容;所以用户程序要么派生一个Thread的子类并在子类里重新定义run()方法,要么使一个类实现
4、Runnable接口并书写其中run()方法的方法体。23Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。24Java Applet是由独立的解释器程序来运行的。25Java Applet只能在图形界面下工作。26Java的字符类型采用的是ASCII编码。27Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关 28Applet是一种特殊的Panel,它是Java Applet程序的最外层容器。 29子类的域和方法的数目一定大于等于父类的域和方法的数目。 30System类不能实例化,即不能创建System类的对象。 31用户自定义的图形界面元素也可
5、以响应用户的动作,具有交互功能 32Java中数组的元素可以是简单数据类型的量,也可以是某一类的对象。 33Vector类中的对象不能是简单数据类型。 34Java中的String类的对象既可以是字符串常量,也可以是字符串变量。 35容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。 二、 选择题 1、关于被私有保护访问控制符private protected修饰的成员变量,以下说法正确的是( )A 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B 可以被两种类访问和引用:该类本身、该类的所有子类C 只能被该类自身所访问和修改D 只能被同一个包中的类访
6、问 2、以下代码段将创建( )个对象。 String s1=bc; String s2=bc;A 0 B、1 C、2 D、33、编译并运行以下程序,以下描述哪个选项是正确的( )1. class X 2. protected String toString() 3. return super.toString(); 4. A、编译通过运行无异常 B、编译通过但运行时出错 、C、行2出错,不能成功编译 D、不能成功编译,行3出错4、下列关于修饰符混用的说法,错误的是( )A abstract不能与final并列修饰同一个类B abstract类中不可以有private的成员C abstract方
7、法必须在abstract类中D static方法中能处理非static的属性5、容器Panel和Applet缺省使用的布局编辑策略是( )A、BorderLayout B、FlowLayout C、GridLayout D、CardLayout6、以下标识符中哪项是不合法的( )A、 BigMeaninglessName B、$intC、1 st D、$17、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( )A、 public static void main() B、public static void main(String ar
8、gs)C、 public static int main(String arg)D、public void main(String arg )8、执行完以下代码int x = new int25;后,以下哪项说明是正确的( )A、x24为0 B、x24未定义 C、x25为0 D、x0为空9、以下代码段执行后的输出结果为( ) int x=3; int y=10; System.out.println(y%x);A、0 B、1 C、2 D、310、以下哪个表达式是不合法的( )A、String x=”Hello”; int y=9; x+=y;B、String x=”Hello”; int y=
9、9; if(x= =y) C、String x=”Hello”; int y=9; x=x+y;D、String x=null; int y=(x!=null)&(x.length()0) ? x.length : 011、编译运行以下程序后,关于输出结果的说明正确的是 ( ) public class Conditional public static void main(String args ) int x=4; System.out.println(“value is “+ (x4) ? 99.9 :9);A、输出结果为:value is 99.99 B、输出结果为:value is
10、9C、输出结果为:value is 9.0 D、编译错误12、以下声明合法的是( )A、default String s; B、public final static native int w( )C、abstract double d; D、abstract final double hyperbolicCosine( )13、关于以下application的说明,正确的是( )1 class StaticStuff2 3 static int x=10;4 static x+=5;5 public static void main(String args )6 7 System.out.p
11、rintln(“x=” + x);8 9 static x/=3;10. A、 4行与9行不能通过编译,因为缺少方法名和返回类型 B、 9行不能通过编译,因为只能有一个静态初始化器C、 编译通过,执行结果为:x=5D、 编译通过,执行结果为:x=314、关于以下程序代码的说明正确的是( )1 class HasStatic2 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(
12、 );7 hs2.x+;8 hs1=new HasStatic( );9 hs1.x+;10 HasStatic.x- -;11 System.out.println(“x=”+x);12 13 A、 5行不能通过编译,因为引用了私有静态变量B、 10行不能通过编译,因为x是私有静态变量C、 程序通过编译,输出结果为:x=103D、 程序通过编译,输出结果为:x=10215、以下选项中循环结构合法的是( )A、 while (int i7) i+; System.out.println(“i is “+i); B、 int j=3;while(j) System.out.println(“ j
13、 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 (j10);16、类Test1定义如下:1public class Test12 public float aMethod(float a,float b) 3 4 将以下哪种方法插入行3是不合法的。( )A、 public float aMet
14、hod(float a, float b,float c) B、 public float aMethod(float c,float d) C、 public int aMethod(int a, int b) D、 private float aMethod(int a,int b,int c) 17、类Test1、Test2定义如下:1 public class Test12 public float aMethod(float a,float b) throws3 IOException 4 5 public class Test2 extends Test16 7 将以下哪种方法插入
15、行6是不合法的。( )A、 float aMethod(float a,float b) B、 public int aMethod(int a,int b)throws Exception C、 public float aMethod(float p,float q) D、 public int aMethod(int a,int b)throws IOException 18、关于以下程序段,正确的说法是( ) 1 String s1=”abc”+”def”;2 String s2=new String(s1);3 if(s1= =s2)4 System.out.println(“= =
16、 succeeded”);5 if (s1.equals(s2)6 System.out.println(“.equals() succeeded”);A、行4与行6都将执行 B、行4执行,行6不执行C、行6执行,行4不执行 C、行4、行6都不执行19、以下说法哪项是正确的( ) 1class MyListener 2extends MouseAdapter implements MouseListener3 public void mouseEntered(MouseEvent mev)4 System.out.println(Mouse entered.); 5 A、 以上代码可通过编译B
17、、 不能通过编译,因为没有实现MouseListener接口中的所有方法C、 不能通过编译,因为类头定义不能分行D、 能通过编译,若组件用该类作为Mouse的监听者并且接收了mouse-exited事件,则在执行过程中会抛出异常20、关于以下程序段的说法,正确的是( ) 1class MyListener implements2 ActionListener,ItemListener3 public void actionPerformed(ActionEvent ae)4 System.out.println(Action);5 public void itemStateChanged(It
18、emEvent ie)6 System.out.println(Item);7 8A、 可通过编译B、 第2行产生编译错误C、 第3行产生编译错误D、 第5行产生编译错误21、通过调用 new List(10,false)创建一个列表,关于该列表的几个说法哪项是错误的。( )A、该列表不支持复选 B、该列表有10个选项C、根据需要该列表可能有垂直滚动条 D、该列表支持10个可见选项22、以下哪项可能包含菜单条( )A、Panel B、Frame C、Applet D、Dialog23、以下代码完成画线功能,指出所画线的颜色( ) 1g.setColor(Color.red.green.yell
19、o.cyan); 2g.drawLine(0,0,100,100);A、red B、green C、yello D、cyan24、关于以下代码所画图形的说明,正确的是( ) 1g.setColor(Color.black); 2g.drawLine(10,10,10,50); 3g.setColor(Color.red); 4g.drawRect(100,100,150,150);A、 一条40像素长的垂直红线,一个边长为150像素的红色四方形B、 一条40像素长的垂直黑线,一个边长为150像素的红色四方形C、 一条50像素长的垂直黑线,一个边长为150像素的红色四方形D、 一条50像素长的垂
20、直红线,一个边长为150像素的红色四方形25、编译并运行以下程序(命令:java AB 1),关于运行结果的描述以下哪个选项是正确的( ) class AB public static void main(String args) long i=0; try i=Integer.parseInt(args0); catch(Exception e) switch(i) case 0: System.out.println(0); case 1: System.out.println(1); default : System.out.println(default); A、 编译出错 B、打印出
21、“0” C、打印出“1” D、打印出“default”三、 改错题判断下面的程序片断是否正确。若有错,指出错在哪里并改正;若正确,打“”。1、 (max为整型变量)if (max1)g.drawString(“不等于1”, 20,20);2、 for(float i=0.0;i-10.0; i -=1.0)System.out.println(i);3、 void test(int x) System.out.println(x); return x;4、abstract final class OurClasses 5、final MAX_NUMBER; MAX_NUMBER+;6、clas
22、s MyClass int var=100; static int getVar() return var; 7、public class MyClass int data; void MyClass(int d) data=d; 8、public class MyMain public static void main(String args ) System.out.println(MyClass1.data); class MyClass1 int data=10; 9、class IamAbstract final int f; double d; abstract void meth
23、od(); 10、class parent private int mine; class child extends parent int getMine() return mine; 11、class parent private int mine; int getMine( ) return mine; class child extends parent int mine; int getMine( ) return super.getMine; 12、class Parent int field; class Child extends Parent int field; class
24、 UseChild static int getField(Child c) return (c.field); public class MainClass public static void main(String args ) Parent p=new Parent(); System.out.println(UseChild.getField(p); 13、class AmIRight int field1=10; abstract void method1( ); 14、class AmIWrong int data1,data2; AmIWrong() data1=-1; AmI
25、Wrong(int d) data2=d; this(); 15、interface MyInterface void method1(); abstract class Parent implements MyInterface class Child extends Parent 16、interface MyInterface void method1(); abstract class Parent implements MyInterface class Child extends Parent void method1() System.out.println(“I am impl
26、emented now!”); 17、public static void main(String args ) try char ch=(char)System.in.read(); . . ./其他语句 catch(Exception e) return; catch(IOException e) System.out.println(e.toString(); 18、public class AmIWrong implements Runnable Thread mt=Thread(this); mt.start(); void run() System.out.println(“I a
27、m alive now”); 19、class MyClass1 final void method1() void method1(int i) 20、说明以下程序是否有误,错在哪里,应如何改正。public class MyApplet extends Applet Label MyLabel; public void init(String args ) MyLabel=new Label(“Can you see me?”); add(MyLabel); 21、说明下面程序是否有误,错在哪里,应如何改正。 import java.applet.*; import java.awt.*;
28、 public class AmIWrong extends Applet implements ActionListener Button btn; public void init() btn=new Button(“Push Me”); add(btn); public void actionPerformed(ActionEvent e) (Button)e.getSource().setLabel(“Pushed!”); 22、int array10; for(int j=0; jarray.length; j+) arrayj=j+1;23、说明下面程序是否有误,错在哪里,应如何改正。 public class UseVector public static void main(String args ) Vector myv;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1