JAVA各章习题及答案 - 副本

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1面向对象程序设计—Java语言习题答案第1章一、选择题1.下列选项中,不属于Java语言特点的一项是(C)。(A)分布式(B)安全性(C)编译执行(D)面向对象【解析】Java程序采用解释执行的方法。在系统编译运行Java程序时,Java编译器将Java程序转化为字节码,在运行时,解释器将编译得到的字节码进行解释执行。2.在Java语言中,(C)是最基本的元素?(A)方法(B)包(C)对象(D)接口【解析】构成Java程序的基本元素类(抽象的对象)。3.编译一个定义了3个类和10个方法的Java源文件后,会产生(D)个字节码文件?扩展名是(D)?(A)13个字节码文件,扩展名为.class(B)1个字节码文件,扩展名为.class(C)3个字节码文件,扩展名为.java(D)3个字节码文件,扩展名为.class【解析】源文件中的每一个类编译后都会生成一个字节码文件,字节码文件的扩展名是.class。4.在创建Applet应用程序时,需要用户考虑问题是(B)。(A)窗口如何创建(B)绘制的图形在窗口中的位置(C)程序的框架(D)事件处理【解析】创建Applet程序时必须继承系统类Applet,而Applet类中已经包含了如何创建窗口以及事件处理等内容,这类程序的框架也都是固定的,而绘制图形在窗口中的位置则需要由用户确定。5.Java语言属于(B)种语言?(A)面向机器的语言(B)面向对象的语言(C)面向过程的语言(D)面向操作系统的语言【解析】Java语言是一种纯面向对象的语言。6.下列关于Application和Applet程序的说法中不正确的一项是(B)。(A)Application使用解释器java.exe(B)Application不使用独立的解释器(C)Applet在浏览器中运行(D)Applet必须继承Java的Applet类【解析】Application程序包含main()方法,它是一种独立执行的程序,因此必须使用独立的解释器解释执行。7.下列选项中,不属于Java核心包的一项是(A)。(A)javax.swing(B)java.io(C)java.utile(D)java.lang【解析】凡是以java开头的包都是Java核心包,以javax开头的包则属于Java扩展包。8.下列描述中,不正确的是(A)。(A)不支持多线程(B)一个Java源文件不允许有多个公共类2(C)Java通过接口支持多重继承(D)Java程序分为Application和Applet两类【解析】Java是支持多线程的语言。9.阅读下列代码,选出该代码段正确的文件名(C)。classA{voidmethod1(){System.out.println(Method1inclassA);}}publicclassB{voidmethod2(){System.out.println(Method2inclassB);}publicstaticvoidmain(String[]args){System.out.println(main()inclassB);}}(A)A.java(B)A.class(C)B.java(D)B.class【解析】Java源文件名必须和公共类的名字完全一样,源文件的扩展名为.java。10.编译下面源程序会得到哪些文件(D)?classA1{}classA2{}publicclassB{publicstaticvoidmain(String[]args){}}(A)只有B.class文件(B)只有A1.class和A2.class文件(C)编译不成功(D)A1.class、A2.class和B.class文件【解析】由于该程序包含3个类,每个类编译后都会生成1个字节码文件,因此编译后会生成以这3个类名命名的字节码文件。二、填空题1.Java程序的编译和执行模式包括2点,是半编译和半解释。2.Java语言支持TCP/IP协议,从而使得Java程序在分布式环境中能够很方便地访问处于不同地点的对象。3.开发Java程序的一般步骤是:源程序编辑、生成字节码和解释执行。4.每个JavaApplication程序可以包括许多方法,但是必须有且只能有一个main()方法,统一格式为publicstaticvoidmain(String[]args),它是程序执行的入口。5.JVM把字节码程序与各种不同的操作系统和硬件分开,使得Java程序独立于平台。6.在Java程序中,能在程序。7.Java源程序文件和字节码文件的扩展名分别为.java和.class。8.如果在Java程序中需要使用java.utile包中的所有类,则应该在程序开始处加上importjava.utitle.*语句。3三、编程题1.编写一个JavaApplication类型的程序,输出“ThisismyfirstJavaApplication!”。【编程分析】要编写JavaApplication类型的程序,需要在JCreator中创建一个JavaApplication类型的工程,这时JCreator会自动创建程序框架,该框架包含一个公共类,其中包含一个main()方法。删除main()方法中自动生成的代码,编写自己的代码即可。由于该程序要求输出一句话,因此在main()方法中直接调用System.out.println()或System.out.print()方法即可实现。【参考程序】publicclassX3_1{publicstaticvoidmain(Stringargs[]){System.out.println(ThisismyfirstJavaApplication!);}}【运行结果】ThisismyfirstJavaApplication!2.编写一个JavaApplet类型的程序,输出“这是我的第一个JavaApplet类型的程序”。【编程分析】要编写一个JavaApplet类型的程序,首先利用JCreator创建一个JavaApplet类型的工程,该工程自动创建两个文件,一个源文件(.java文件)和一个HTML文件(.html文件),源文件中包含一个公共类,其中包含两个方法,即init()方法和paint()方法,由于该程序只是要求输出一句话,因此只要将paint()方法中g.drawString()方法的第一个参数修改为要输出的内容即可。如果不是利用JCreator开发工具,而是利用J2SDK,则用户需要自己编写HTML文件。【参考程序】importjava.awt.*;importjava.applet.*;publicclassX3_2extendsApplet{publicvoidpaint(Graphicsg){g.drawString(这是我的第一个JavaApplet类型的程序,50,50);}}【运行结果】4第4章一、选择题1.下列哪种类成员修饰符修饰的变量只能在本类中被访问?(D)(A)protected(B)public(C)default(D)private【解析】只有私有访问权限修饰符才能限制变量只能在本类中被访问。2.在Java语言中,哪一个包中的类是自动导入的?(A)A)java.langB)java.awtC)java.ioD)java.applet【解析】只有java.lang包中的类能够被自动导入。3.给出下面的程序代码:publicclassX4_1_3{privatefloata;publicstaticvoidm(){}}如何使成员变量a被方法m()访问(C)(A)将privatefloata改为protectedfloata(B)将privatefloata改为publicfloata(C)将privatefloata改为staticfloata(D)将privatefloata改为floata【解析】static类型的方法只能访问static类型的数据成员。4.有一个类B,下面为其构造方法的声明,正确的是(B)。(A)voidB(intx){}(B)B(intx){}(C)b(intx){}(D)voidb(intx){}【解析】构造方法没有类型,且方法名与类名相同。5.下面关于类的说法,不正确的是(C)。(A)类是同种对象的集合和抽象(B)类属于Java语言中的复合数据类型(C)类就是对象(D)对象是Java语言中的基本结构单位【解析】类是对象的抽象,对象是类的实例,因此类和对象是有区别的。6.下面关于方法的说法,不正确的是(C)。(A)Java中的构造方法名必须和类名相同(B)方法体是对方法的实现,包括变量声明和合法语句(C)如果一个类定义了构造方法,也可以用该类的默认构造方法(D)类的私有方法不能被其他类直接访问【解析】类中一旦用户定义了构造方法,该类默认的构造方法就不存在了,除非用户再自定义该类的默认构造方法。7.关于内部类,下列说法不正确的是(A)。(A)内部类不能有自己的成员方法和成员变量(B)内部类可用private或protected修饰符修饰(C)内部类可以作为其他类的成员,而且可访问它所在的类的成员(D)除static内部类外,不能在类内声明static成员【解析】内部类也可以有自己的成员方法和变量。8.定义外部类时不能用到的关键字是(C)。(A)final(B)public(C)protected(D)abstract【解析】定义外部类不能使用protected修饰符。9.为AB类定义一个无返回值的方法f,使得使用类名就可以访问该方法,该方法头的5形式为(D)(A)abstractvoidf()(B)publicvoidf()(C)finalvoidf()(D)staticvoidf()【解析】只有static类型的方法才可以直接使用类名来引用。10.定义一个公有double型常量PI,哪一条语句最好?(B)(A)publicfinaldoublePI;(B)publicfinalstaticdoublePI=3.14;(C)publicfinalstaticdoublePI;(D)publicstaticdoublePI=3.14;【解析】用publicfinalstatic来定义常量,既可以节省存储空间,又可以保证数值不会被改变。二、填空题1.对象是对事物的抽象,而类是对对象的抽象和归纳。2.从用户的角度看,Java源程序中的类分为两种:系统定义的类和用户自己定义的类。3.一个类主要包含两个要素:数据成员和成员方法。4.创建包时需要使用关键字package。5.类中的构造方法是一个特殊的方法,该方法的方法名和类名相同。6.如果用户在一个自定义类中未定义该类的构造方法,系统将为这个类定义一个默认构造方法。这个方法没有形式参数,也没有任何具体语句,不能完成任何操作。7.静态数据成员被保存在类的内存区的公共存储单元中,而不是保存在某个对象的内存区中。因此,一个类的任何对象访问它时,存取到的都是相同(相同/不同)的数值。8.静态数据成员既可以通过对象名来访问,也可以通过类名直接访问它。9.定义常量时要用关键字final,同时需要说明常量的数据类型并指出常量的具体值。10.方法体内定义变量时,变量前不能加修饰符;局部变量在使用前必须明确赋值,否则编译时会出错;而类变量在使用前可以不用赋值,它们都有一个默认的值。11.static方法中只能引用static类型的数据成员和static类型的成员方法;而非static类型的方法中既可以引用static类型的数据成员和成员方法,也可以引用非static类型的数据成员和成员方法。12.引用static类型的方法时,可以使用类名做前缀,也可以使用对象名做前缀。13.当程序中需要引用java.awt.event包中的类时,导入该包中类的语句为importjava.awt.event.*。14.定义类时需要class关键字,继承类时需要extends关键字,实现接口时需要关键字implements

1 / 21
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功