Java复习题.docx
- 文档编号:25774969
- 上传时间:2023-06-13
- 格式:DOCX
- 页数:16
- 大小:49.03KB
Java复习题.docx
《Java复习题.docx》由会员分享,可在线阅读,更多相关《Java复习题.docx(16页珍藏版)》请在冰豆网上搜索。
Java复习题
选择题
1.下面哪些是java语言中的关键字()
A、sizeofB、abstractC、NULLD、Native
2.方法的重载必须满足的条件是()
A、参数的个数不同,或者是参数的类型不同B、参数的顺序不同
C、方法的名字不同D、返回类型不同
3.Frame类是Container类的间接子类,可使用Frame()
A、创建一个菜单对象B、创建一个窗口对象
C、创建一个对话框对象D、创建一个文件对象
4.所有输出流都是()
A、OutputStream或Writer的子类B、OutputStream的子类
C、Writer的子类D、Output的子类
5.Object类所属的包是()
A、包java.utilB、包java.langC、包java.systemD、包java.Object
6.请问所有的例外类皆继承哪一个类()
A、java.io.ExceptionB、java.lang.Throwable
C、java.lang.ExceptionD、java.lang.Error
7.GridLayout对应的布局将容器中的组件按照()
A、将容器的空间分为东、西、南、北、中五个区域,中间的区域最大
B、加入的先后顺序从左向右排列
C、划分成若干行乘若干列的网格区域,组件就位于这些划分出来的小格中
D、由用户定制
8.设有下面两个类的定义:
classPerson{longid;//身份证号
Stringname;//姓名}
classStudentextendsPerson{intscore;//入学总分
intgetScore(){returnscore;}}
问:
类Person和类Student的关系是()
A、包含关系B、继承关系C、关联关系D、无关系,上述类定义有语法错误
9.在编写异常处理的Java程序中,每个catch语句块都应该与()语句块对应,使得用该语句块来启动Java的异常处理机制。
A、if–elseB、switchC、tryD、throw
10.下列描述正确的是()
A、多态性就是指子类的某个方法被其父类重写时,可以各自产生自己的功能行为。
B、多态性就是指子类的某个方法被其父类重写时,不能各自产生自己的功能行为。
C、多态性就是指父类的某个方法被其子类重写时,可以各自产生自己的功能行为。
D、以上都不对
11.运行JavaApplet的工具是()
A、javacB、javaC、javadocD、浏览器
12.创建文本区的监视器的类必须要实现的接口是()
A、ItemListenerB、ChoiceListenerC、TextListenerD、ActionListener
13.类的设计要求它的某个成员变量不能被外部类直接访问,应该使用下面的哪些修饰符获得需要的访问控制()?
A、publicB、defaultC、protectedD、private
14.运行下列程序的结果是哪个()
abstractclassMineBase{
abstractvoidamethod();
staticinti;
}
publicclassMineextendsMineBase
{
publicstaticvoidmain(Stringargv[]){
int[]ar=newint[5];
for(i=0;i System.out.println(ar[i]); } } A、打印5个0。 B、编译出错,数组ar[]必须初始化。 C、编译出错,Mine应声明为abstract。 D、出现IndexOutOfBoundes的例外。 15.可以对对象加互斥锁的关键字是() A、transientB、synchronizedC、serializeD、static 16.编译JavaApplication源程序文件产生的字节码文件的扩展名为()。 A、javaB、classC、htmlD、exe 17.关于方法main()的说法哪个正确() A、方法main()只能放在公共类中 B、main()的头定义可以根据情况任意更改 C、一个类中可以没有main()方法 D、所有对象的创建都必须放在main()方法中 18.构造函数何时被调用() A、创建对象时B、类定义时 C、使用对象的方法时D、使用对象的属性时 19.关于构造函数的说法哪个正确() A、一个类只能有一个构造函数 B、一个类可以有多个不同名的构造函数 C、构造函数与类同名 D、构造函数必须自己定义,不能使用父类的构造函数 20.关于继承的说法正确的是() A、子类将继承父类所有的属性和方法。 B、子类将继承父类的非私有属性和方法。 C、子类只继承父类public方法和属性 D、子类只继承父类的方法,而不继承属性 21.下列哪个关键字用于实现接口() A、implementsB、implement C、importD、imports 22.现有两个类A、B,以下描述中表示B继承自A的是() A、classAextendsBB、classBimplementsA C、classAimplementsBD、classBextendsA 23.Main()方法的返回类型是() A、int B、void C、boolean D、static 24.对于下列代码: publicclassParent{ publicintaddValue(inta,intb){ ints; s=a+b; returns; } } classChildextendsParent{ } 下述哪些方法可以加入类Child() A、intaddValue(inta,intb){//dosomething...} B、publicvoidaddValue(inta,intb){//dosomething...} C、publicintaddValue(inta){//dosomething...} D、publicintaddValue(inta,intb)throwsMyException{//dosomething...} 25.欲编写如下图的一个界面,用于显示用户指定的图像: 如果在区域A中只能放置一个AWT组件,从各组件的本来功能角度考虑,最好使用哪种组件() A、TextArea B、Panel C、Applet D、Canvas 26.下面关于Applet的说法正确的是() A、Applet也需要main方法 B、Applet必须继承自java.awt.Applet C、Applet能访问本地文件 D、Applet程序不需要编译 27.看下面一段程序: classAclass{ voidgo(){ System.out.println("Aclass"); } } publicclassBclassextendsAclass{ voidgo{ System.out.println("Bclass"); } publicstaticvoidmain(Stringargs[]){ Aclassa=newAclass(); Aclassa1=newBclass(); a.go(); a1.go(); } } 以上程序运行结果是() A、Aclass Aclass B、Bclass Bclass C、Aclass Bclass D、Bclass Aclass 28.在java的一个异常处理中,哪个语句块可以有多个() A、catchB、finallyC、tryD、throws 29.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为() A、staticvoidmethod()B、publicvoidmethod() C、finalvoidmethod()D、abstractvoidmethod() 30.以下哪个方法用于定义线程的执行体() A、start()B、init() C、run()D、main() 31.下列哪个方法可用于创建一个可运行的线程类() A、publicclassXimplementsRunable{publicvoidrun(){......}} B、publicclassXimplementsThread{publicvoidrun(){......}} C、publicclassXimplementsThread{publicintrun(){......}} D、publicclassXimplementsRunable{protectedvoidrun(){......}} 32.阅读下列程序: publicclassTest{ publicstaticvoidmain(String[]args){ Stringfoo=args[1]; Stringbar=args[2]; Stringbaz=args[3]; System.out.printIn(“baz=”+baz); } } 输出结果是: baz=2 给出的四个命令参数中,哪一个可以得出正确的输出结果() A.JavaTest2222 B.JavaTest1234 C.JavaTest4242 D.JavaTest4321 33.Java源文件和编译后的文件扩展名分别为() A、.class和.javaB、.java和.classC、.class和.classD、.java和.java 34.对于可以独立运行的Java应用程序,下列()说法是正确的。 A、无须main方法B、必须有两个main方法 C、可以有多个或零个main方法D、必须有一个main方法 35.用abstract定义的类() A、可以被实例化B、不能派生子类 C、不能被继承D、只能被继承 36.设有下面两个赋值语句: a=Integer.parseInt(“1024”); b=Integer.valueOf(“1024”).intValue(); 下述说法正确的是()。 A、a是整数类型变量,b是整数类对象。 B、a是整数类对象,b是整数类型变量。 C、a和b都是整数类对象并且它们的值相等。 D、a和b都是整数类型变量并且它们的值相等。 37.下列哪一个容器不属于顶级容器() A、JFrameB、JDialogC、JPanelD、Applet 38.创建一个标识有“关闭”按钮的语句是()。 A、TextFieldb=newTextField(“关闭”); B、Labelb=newLabel(“关闭”); C、Checkboxb=newCheckbox(“关闭”); D、Buttonb=newButton(“关闭”); 39.在JavaApplet程序用户自定义的Applet子类中,常常重载()方法在Applet的界面中显示文字、图形和其它界面元素。 A、start()B、stop() C、init()D、paint() 40.下面的语句的作用是: ()。 VectorMyVector=newVector(100,50); A、创建一个数组类对象MyVector,有100个元素的空间,每个元素的初值为50。 B、创建一个向量类对象MyVector,有100个元素的空间,每个元素的初值为50。 C、创建一个数组类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。 D、创建一个向量类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。 填空题: 1.Java程序主要分为两种类型: 应用程序和。 2.一个Java源程序编译后会生成一个扩展名为的字节码文件。 3.应用程序编译后生成字节码文件,由直接解释执行。 4.要编译一个文件名为Test的Java源程序,需在命令控制台窗口输入编译命令: 。 5.执行退出(结束)程序的语句是。 6.语句System.exit(0);所执行的功能是。 7.在Java程序中,用"//"符号表示单行注释,那么用符号表示多行注释。 8.Java定义了8个基本数据类型: 字节型、短整型、整型、长整型、字符型、布尔型、单精度型和。 9.布尔型的数据不对应于任何整数值,它只有两个值true和。 10.Java程序中语句执行有三种基本控制结构: 顺序、选择和。 11.do-while语句与while语句的区别在于先执行循环体中的语句再计算条件表达式,所以do-while语句的循环体至少被执行次。 12.数组是一组相同类型变量的集合,其下标是从开始算的。 13.定义一个包含7个元素的数组a,则该数组的最后一个元素是。 14.比较两个字符串是否相同采用方法。 15.创建一个名为MyPackage的包的语句是。 16.类修饰符有3种,它们分别是public,和final。 17.Java程序在extends之后只能有一个父类,即extends只能实现继承。 18.在Java中只能实现单继承(Java不支持多重继承),但可通过实现多重继承。 19.要在类声明中实现接口,需使用关键字。 20.在Java中,变量分为成员变量和。 21.在类体中声明的变量称为。 22.在方法中声明的变量称为。 23.成员变量在整个类体中有效,而局部变量只在定义它的内有效。 24.如果局部变量名与成员变量名相同,则被屏蔽。 25.在Java程序中,使用关键字来引用当前对象。 26.构造方法的方法名要求与相同,而且无返回值。 27.构造方法只能通过运算符调用,用户不能直接调用。 28.对象通过使用运算符实现对自己的变量访问。 29.面向对象的3个特性是: 封装性、继承性和。 30.在Java中,通过对象的,实现了模块化和信息隐藏。 31.两个方法具有相同的名字,相同的参数表和相同的返回类型,只是函数体不同,则称为。 32.Java中通过关键字来实现对父类成员的访问。 33.Java中成员方法可分成两种: 类方法和。 34.Java用关键字指明继承关系。 35.用关键字修饰的方法就称为类方法。 36.在Java中,用关键字来修饰一个类,则该类为抽象类。 37.若某个类包含了抽象方法,则该类必须被定义为类。 38.接口的定义,需使用关键字来声明。 39.接口中没有什么实例方法,所有的成员方法都是方法。 40.包定义时,需使用关键字来实现。 41.要使用包中的类,必须用关键字导入这些类所在的包。 42.当要引用包中所有的类时,类名可以用通配符号代替。 43.假若一个按钮产生了一个ActionEvent事件,则事件监听器会将该事件传递给方法来进行事件处理。 44.假若一个按钮btn要产生一个ActionEvent事件,则使用方法来注册监听器。 45.建立菜单的步骤: ,,。 46.要使一个Frame能够正常显示,两个必须的方法是: 与setVisible(true)。 47.Java线程同步机制提供关键字,用于修饰可能引起资源冲突的方法。 48.创建多线程的途径有两种: 创建Thread类的子类与实现接口。 49.假若要实现Runnable接口,就必须具体实现接口中的方法。 50.线程调用方法来启动线程。 51.线程调用方法来使自己放弃处理器资源,休眠一段时间。 52.sleep(int)方法中,休眠时间的单位为。 53.判断当前正在占有CPU的线程的方法是。 54.Runnable接口中只有一个方法。 55.线程同步机制中,调用方法使线程进入等待状态。 56.通知线程状态的变化并唤醒另一个等待线程,需应用方法。 57.在Java中,把异常分为异常情况和两大类。 58.抛出异常的方法有两种: 系统自动抛出的异常和。 59.异常处理过程中,一个try程序块可以对应个catch块。 60.根据流的运行方向,流分为输入流和。 61.Java中的数据流包括字节流和流两种。 62.在java.io包中有4个基本类: InputStream、OutputStream、Reader 及类。 63.在io类库中,InputStream和是处理字节数据的基本输入/输出类。 64.用于字符流读写缓冲存储的类是BufferedReader和。 65.数据的读写操作完毕后,应用方法来关闭流并释放资源。 问答题: 1.JVM的原理 2.JavaGUI中的事件处理机制 3.java输入输出流归类 4.Java多线程实现方式联系和区别 程序题: 1面向对象内部类 2异常处理 3输入输出 编程题: 1面向对象类似宠物商店 2输入输出 .将项目打成jar: 1.1要将项目打包成jar文件,方法很多,可以用Eclipse自带的打包工具Ant打包,也可以用Eclipse的Export生成jar。 经过尝试后,我不推荐用Ant打包,因为要自己编写xml脚本语言,还要增加一些外部的jar,细心耐心可完成,同时查阅资料。 1.2在这里介绍两种方法生成jar,第一种是用Eclpise的Export功能。 在要打包的项目上击右键,选择Export,在窗口中选择Java里的JARfile。 Next后的窗口中已经自动选好了要打包的项目,用户可以点击加号查看项目里被打包的内容。 在下面的JARfile里设置你打包生成jar文件的输出目录,下一步在出现的窗口中选择Useexistingmanifestfromworkspace,在下面的Mainclass后面直接点Browse,它会自动列出你项目中有主函数main的类。 选择主类后点Finish即可生成jar文件。 在此说明一下,这种打包方法不能把项目中的外部的jar包打进来,因该是也要编写一些脚本语言,没往深研究。 所以生成后的jar有些是不能执行的。 1.3第二种方法是利用Eclipse的一个第三方插件fatjar生成jar文件,简单实用。 先从网上下载些插件,解压后是一个plugins的文件夹,里面只有一个文件夹,我的是“net.sf.fjep.fatjar_0.0.24”将它copy到Eclipserplugins文件夹下,此插件就安装成功了,重启Eclipse在项目上右击就会看到多出一个“BuildFatJar”在前面有个绿色的“+”号,这时你就可以用此插件打包你的项目了。 进去后第一个界面Jar-Name里增入要生成的jar文件名,我的是“CAMP_fat.jar”。 在Main-Class后点Browse像Export一样它也会列出你项目中的主类,选择后其它默认即可,Next后会列出你要打包的所有内容,这个插件的优势就是可以将你项目中的外部jar也打进来,有三个先项,其中ExportANT是生成build.xml脚本文件,方便用户以后修改脚本,其它两个按钮没用。 在这里什么都不点,直接点Finish就可以生成jar文件。 将jar打成.exe文件 到的打包工具是j2ewiz和exe4j 首先是j2ewiz,这个软件是绿色的,不用安装,解压后可以直接运行,但这个软件生成的.exe文件不是跨平台的。 运行此程序首先就是输入要打包的jar文件,我们浏览JAR选择我们之前用fatjar生成的“CAMP_fat.jar”,下面那个选项是提示用户最低要求的JRE版本,一般选1.3。 下一步,在这里选“Windows窗口程序”下一步它也是自动生成要执行的主类,你只要选择就可以。 下面的选框可以选择你启动程序显示的图片。 下一步后这个窗可按个人喜好选择。 下一步,如果你的程序还有什么依赖的外部jar文件,可以从这里加上,但因为之前的fatjar以经将我们项目所用的那三个连数据库的外部类打进CAMP_fat.jar包里了,所以这里不用再添加。 如果你之前是用Export打的jar包,那么这里就需要再把那个三个数据库的包加进来了。 下一步是添入要生成的.exe文件名,再选一个程序图标就可以了,下一步后生成.exe文件,点完成。 双击生成的.exe文件就能看到运行效果了,这种exe文件还没有脱离JDK环境,还不能跨平台使用,只能用于小组成员测试使用。 如何打包跨平台的.exe文件。 用到的软件是exe4j,我用的是V4.0版的,此软件需要破解。 安装后运行左窗窗口标有十步,其实打包过程也非常简单。 第一步完全略过,直接点Next第二步我们选择“JARinEXEmode”就是选择我们已经有制作好的jar文件。 第3步上面是项目名称,可随便填写,下面一个写出你想要将打包后的exe文件输出的目录我的是“桌面\project\”。 第4步,由于我的演示程序是图形的,所以选第一个,如果你的程序是控制台的,则选择第二个,Executablename写你将要生成的.exe文件的名字,IconFile可以选择生成文件的图标。 第5步,先别管上面的,先在下面单击绿色的“+”号,在弹出的窗口中点Archive,然后找到起初已经做好的CAMP_fat.jar(详见1.3)文件,"OK"后返回,在下面的ClassPath里就出现jar文件路径后,再在上面MainClass栏内点击找到main所在的类。 第6步,你系统的JRE版本,一般是填个1.3,下面填1.6在这里单击advancedoptions,选择searchsequence。 选这个就是因为我们要把JDK环境也打包进来,好让程序能跨平台使用。 首先要从你系统的JDK下的JRE目录copy到你.exe文件的输出目录下“桌面\project\JRE”,然后回到exe4j中在弹出窗口删
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 复习题