Java程序设计习题集第页-1-目录一、判断题...........................................................................................-1-二、选择题...........................................................................................-3-三、填空题.........................................................................................-16-四、写出下列程序完成的功能.........................................-24-五、写出下面程序的运行结果.........................................-28-六、使用Java语言编写程序.............................................-32-七、简答题.........................................................................................-33-Java程序设计习题集一、判断题1.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(F)2.有的类定义时可以不定义构造函数,所以构造函数不是必需的。(F)3.类及其属性、方法可以同时有一个以上的修饰符来修饰。(T)4.Java的屏幕坐标是以像素为单位,容器的左下角被定为坐标的起点。(F)(应该是左上角)5.抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。(F)6.Final类中的属性和方法都必须被final修饰符修饰。(F)(静态的必须被静态的修饰符修饰)7.最终类不能派生子类,最终方法不能被覆盖。(T)8.子类要调用父类的方法,必须使用super关键字。(T)9.一个Java类可以有多个父类。(F)10.如果p是父类Parent的对象,而c是子类Child的对象,则语句c=p是正确的。(F)11.一个类如果实现了某个接口,那么它必须重载该接口中的所有方法。(T)Java程序设计习题集第页-2-12.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。(T)13.接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。(T)14.用“+”可以实现字符串的拼接,用-可以从一个字符串中去除一个字符子串。(F)15.一个容器中可以混合使用多种布局策略。(T)16.一个线程对象的具体操作是由run()方法的内容确定的,但是Thread类的run()方法是空的,其中没有内容;所以用户程序要么派生一个Thread的子类并在子类里重新定义run()方法,要么使一个类实现Runnable接口并书写其中run()方法的方法体。(T)17.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(T)18.JavaApplet是由独立的解释器程序来运行的。(F)19.JavaApplet只能在图形界面下工作。(T)20.Java的字符类型采用的是ASCII编码。(F)21.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。(T)22.容器是用来组织其他界面成分和元素的单元,它不能嵌套其他容器。(F)23、Java是不区分大小写的语言。(F)24、Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(T)25、JavaApplication是由独立的解释器程序来运行的。(F)26、JavaApplet的字节码文件必须嵌入HTML的文件中并由负责解释HTML文件的浏览器充当解释器来解释运行。(F)27、JavaApplication只能在字符界面下工作。(F)28、Java的字符类型采用的是Unicode编码,每个Unicode码占16个比特。(T)29、Java源程序是由类定义组成的,每个程序可以定义若干个类,但只有一个类是主类。(T)30、子类的域和方法的数目一定大于等于父类的域和方法的数目。(F)31、类在实现接口的方法时,必须显示地使用public修饰符。(T)32、一个类只能有一个父类,但一个接口可以有一个以上的父接口。(T)33、程序中抛出异常时(throw…),只能抛出自己定义的异常对象。(F)34、System类中的in是一个输入对象。(T)35、实现一个接口,则在类中一定要实现接口中的所有方法。(T)36、所有的文件输入/输出流都继承于InputStream类/OutputStream类。(F)37、一个异常处理中finally语句块只能有一个或者可以没有。(F)Java程序设计习题集第页-3-38、语句importjava.applet.Applet;最后的Applet是代表类(class)。(T)39、类体中private修饰的变量在本类中能访问,类生成的对象也能访问。(F)40、线程使用sleep()方法休眠后,可以用notify()方法唤醒。(F)41、一个异常处理中finally语句块只能有一个或者可以没有。(T)42、用Javac编译Java源文件后得到代码叫字节码。(T)43、数组、类和接口都是引用数据类型。(F)44、一个Applet编译后的类名是Test.class,运行此小程序的命令是JavaTest。(F)45、Java语言中一个Char类型的数据占用2个字节大小的内存空间。(T)46、编译语句DoubleaDouble=37.2D不会出现编译错误。(F)47、编译语句intaInt=66666不会出现编译错误。(T)48、判断下面说法的正误:if(true){inti=17;}System.out.println(i);运行此程序的结果是输出17。(F)49、floatx=26f;inty=26;intz=x/y;以上语句能正常编译和运行。(F)50、判断下面说法的正误:intx=9;if(x8andx10)System.out.println(true);以上语句运行的结果是显示true。(T)51、判断下面说法的正误:Stringstr;System.out.println(str.length());以上语句运行的结果是显示0。(F)52、抽象类不能实例化。(T)53、一个方法最多能有一个return语句。(F)54、接口名可以作为方法返回值的类型。(T)55、类A和类B位于同一个包中,则除了私有成员,类A可以访问类B的所有其他成员。(T)二、选择题1.编译JavaApplet源程序文件产生的字节码文件的扩展名为(B)。A、javaB、classC、htmlD、exe2.main方法是JavaApplication程序执行的入口点,关于main方法的Java程序设计习题集第页-4-方法头以下哪项是合法的(BC)?A、publicstaticvoidmain()B、publicstaticvoidmain(Stringargs[])C、publicstaticintmain(String[]arg)D、publicvoidmain(Stringarg[])3.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。A、staticvoidmethod()B、publicvoidmethod()C、finalvoidmethod()D、abstractvoidmethod()4.下列哪个是合法的Java标识符?(BC)A、Tree&GlassesB、FirstJavaAppletC、_$theLastOneD、273.55.JavaApplication源程序的主类是指包含有(A)方法的类。A、main方法B、toString方法C、init方法D、actionPerfromed方法6.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用(B)个比特位。A、8B、16C、32D、647.设a=8,则表达式a2的值是(B)。A、1B、2C、3D、48.若a的值为3时,下列程序段被执行后,c的值是多少?(C)c=1;if(a0)if(a3)c=2;elsec=3;elsec=4;A、1B、2C、3D、49.在编写JavaApplication程序时,若需要使用到标准输入输出语句,必须在程序的开头写上(C)语句。A、importjava.awt.*;B、importjava.applet.Applet;C、importjava.io.*;D、importjava.awt.Graphics;10.对于构造函数,下列叙述正确的是(ACD)。A、构造函数是类的一种特殊函数,它的方法名必须与类名相同。B、构造函数的返回类型只能是void型。C、构造函数的主要作用是完成对类的对象的初始化工作。D、一般在创建新对象时,系统会自动调用构造函数。11.下面的是关于类及其修饰符的一些描述,正确的是:(AD)。A、abstract类只能用来派生子类,不能用来创建abstract类的对象。B、final类不但可以用来派生子类,也可以用来创建final类的对象。C、abstract不能与final同时修饰一个类。Java程序设计习题集第页-5-D、abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。12.若需要定义一个类域或类方法,应使用哪种修饰符?(A)A、staticB、packageC、privateD、public13.若在某一个类定义中定义有如下的方法:abstractvoidperformDial();该方法属于(D)。A、本地方法B、最终方法C、解态方法D、抽象方法14.下列关于静态初始化器的叙述中,哪一个是正确的?(B)A、静态初始化器是在构造函数之前加上static修饰符。B、静态初始化器是对类自身进行初始化。C、静态初始化器在同一个类中只能有一个。D、静态初始化器是在其所属的类加载内存时不是由系统自动调用执行。15.不使用static修饰符限定的方法称为对象(或实例)方法,下列哪一个说法是正确的?(AB)A、实例方法可以直接调用父类的实例方法。B、实例方法可以直接调用父类的类方法。C、实例方法可以直接调用其他类的实例方法。D、实例方法不可以直接调用本类的类方法。16.设有下面两个类的定义:classPerson{}classStudentextendsPerson{longid;//身份证号intscore;//入学总分Stringname;//姓名intgetScore(){returnscore;}}问:类Person和类Student的关系是(B)。A、包含关系B、继承关系C、关联关系D、无关系,上述类定义有语法错误17.设有下面的两个类定义:classAA{voidShow(){System.out.println(“我喜欢Java!”);}classBBextendsAA{voidShow(){System.out.println(“我喜欢C++!”);}则顺序执行如下语句后输出结果为:(A)Java程序设计习题集第页-6-AAa;BBb;a.Show();b.Show();A、我喜欢Java!B、我喜欢C++!我喜欢C++!我喜欢Java!C、我喜欢Java!D、我喜欢C++!我喜欢Java!我喜欢C++!18.设有下面的一个类定义:classAA{staticvoidShow(){System.out.println(“我喜欢Java!”);}}classBB{voidShow(){System.o