ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:50.12KB ,
资源ID:4295470      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4295470.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(JAVA各章习题及答案副本.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

JAVA各章习题及答案副本.docx

1、JAVA各章习题及答案 副本面向对象程序设计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

2、)13个字节码文件,扩展名为.class (B)1个字节码文件,扩展名为.class(C)3个字节码文件,扩展名为.java (D)3个字节码文件,扩展名为.class【解析】源文件中的每一个类编译后都会生成一个字节码文件,字节码文件的扩展名是.class。4在创建Applet应用程序时,需要用户考虑问题是( B )。(A)窗口如何创建 (B)绘制的图形在窗口中的位置(C)程序的框架 (D)事件处理【解析】创建Applet程序时必须继承系统类Applet,而Applet类中已经包含了如何创建窗口以及事件处理等内容,这类程序的框架也都是固定的,而绘制图形在窗口中的位置则需要由用户确定。5Java

3、语言属于( 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

4、)javax.swing (B)java.io(C)java.utile (D)java.lang【解析】凡是以java开头的包都是Java核心包,以javax开头的包则属于Java扩展包。8下列描述中,不正确的是( A )。(A)不支持多线程 (B)一个Java源文件不允许有多个公共类(C)Java通过接口支持多重继承 (D)Java程序分为Application和Applet两类【解析】Java是支持多线程的语言。9阅读下列代码,选出该代码段正确的文件名( C )。class A void method1() System.out.println(Method1 in class A);

5、public class B void method2() System.out.println(Method2 in class B); public static void main(String args) System.out.println(main() in class B); (A)A.java (B)A.class(C)B.java (D)B.class【解析】Java源文件名必须和公共类的名字完全一样,源文件的扩展名为.java。10编译下面源程序会得到哪些文件( D )?class A1class A2public class B public static void ma

6、in(String args) (A)只有B.class文件 (B)只有A1.class和A2.class文件(C)编译不成功 (D)A1.class、A2.class和B.class文件【解析】由于该程序包含3个类,每个类编译后都会生成1个字节码文件,因此编译后会生成以这3个类名命名的字节码文件。二、填空题1Java程序的编译和执行模式包括2点,是 半编译 和 半解释 。2Java语言支持 TCP/IP 协议,从而使得Java程序在分布式环境中能够很方便地访问处于不同地点的 对象 。3开发Java程序的一般步骤是:源程序编辑、 生成字节码 和 解释执行 。4每个Java Applicatio

7、n程序可以包括许多方法,但是必须有且只能有一个 main() 方法,统一格式为 public static void main(String args) ,它是程序执行的入口。5JVM把字节码程序与各种不同的 操作系统 和 硬件 分开,使得Java程序独立于平台。6在Java程序中,能在WWW浏览器上运行的是 Applet 程序。7Java源程序文件和字节码文件的扩展名分别为 .java 和 .class 。8如果在Java程序中需要使用java.utile包中的所有类,则应该在程序开始处加上 import java.utitle.* 语句。三、编程题1编写一个Java Application

8、类型的程序,输出“This is my first Java Application!”。【编程分析】 要编写Java Application类型的程序,需要在JCreator中创建一个Java Application类型的工程,这时JCreator会自动创建程序框架,该框架包含一个公共类,其中包含一个main()方法。删除main()方法中自动生成的代码,编写自己的代码即可。由于该程序要求输出一句话,因此在main()方法中直接调用System.out.println()或System.out.print()方法即可实现。【参考程序】public class X3_1 public stat

9、ic void main(String args) System.out.println(This is my first Java Application!); 【运行结果】This is my first Java Application!2编写一个Java Applet类型的程序,输出“这是我的第一个Java Applet类型的程序”。【编程分析】 要编写一个Java Applet类型的程序,首先利用JCreator创建一个Java Applet类型的工程,该工程自动创建两个文件,一个源文件(.java文件)和一个HTML文件(.html文件),源文件中包含一个公共类,其中包含两个方法,

10、即init()方法和paint()方法,由于该程序只是要求输出一句话,因此只要将paint()方法中g.drawString()方法的第一个参数修改为要输出的内容即可。如果不是利用JCreator开发工具,而是利用J2SDK,则用户需要自己编写HTML文件。【参考程序】 import java.awt.*;import java.applet.*;public class X3_2 extends Applet public void paint(Graphics g) g.drawString(这是我的第一个Java Applet类型的程序,50,50); 【运行结果】 第4章一、选择题1下

11、列哪种类成员修饰符修饰的变量只能在本类中被访问?( D ) (A)protected (B)public (C)default (D)private【解析】只有私有访问权限修饰符才能限制变量只能在本类中被访问。2在Java语言中,哪一个包中的类是自动导入的?( A )A)java.lang B)java.awt C)java.io D)java.applet 【解析】只有java.lang包中的类能够被自动导入。3给出下面的程序代码:public class X4_1_3 private float a; public static void m ( ) 如何使成员变量a被方法m( )访问(

12、C )(A)将private float a改为protected float a(B)将private float a改为public float a(C)将private float a改为static float a (D)将private float a改为float a 【解析】static类型的方法只能访问static类型的数据成员。4有一个类B,下面为其构造方法的声明,正确的是( B )。(A)void B(int x) (B)B(int x) (C)b(int x) (D)void b(int x) 【解析】构造方法没有类型,且方法名与类名相同。5下面关于类的说法,不正确的是(

13、 C )。(A)类是同种对象的集合和抽象 (B)类属于Java语言中的复合数据类型(C)类就是对象 (D)对象是Java语言中的基本结构单位 【解析】类是对象的抽象,对象是类的实例,因此类和对象是有区别的。6下面关于方法的说法,不正确的是( C )。(A)Java中的构造方法名必须和类名相同(B)方法体是对方法的实现,包括变量声明和合法语句(C)如果一个类定义了构造方法,也可以用该类的默认构造方法(D)类的私有方法不能被其他类直接访问【解析】类中一旦用户定义了构造方法,该类默认的构造方法就不存在了,除非用户再自定义该类的默认构造方法。7关于内部类,下列说法不正确的是( A )。(A)内部类不能

14、有自己的成员方法和成员变量(B)内部类可用private或protected修饰符修饰(C)内部类可以作为其他类的成员,而且可访问它所在的类的成员(D)除static内部类外,不能在类内声明static成员 【解析】内部类也可以有自己的成员方法和变量。8定义外部类时不能用到的关键字是( C )。 (A)final (B)public (C)protected (D)abstract【解析】定义外部类不能使用protected修饰符。9为AB类定义一个无返回值的方法f,使得使用类名就可以访问该方法,该方法头的形式为( D )(A)abstract void f() (B)public void

15、f()(C)final void f() (D)static void f() 【解析】只有static类型的方法才可以直接使用类名来引用。10定义一个公有double型常量PI,哪一条语句最好?( B )(A)public final double PI; (B)public final static double PI=3.14;(C)public final static double PI; (D)public static double PI=3.14; 【解析】用public final static来定义常量,既可以节省存储空间,又可以保证数值不会被改变。二、填空题1 对象 是对

16、事物的抽象,而 类 是对对象的抽象和归纳。2从用户的角度看,Java源程序中的类分为两种: 系统定义的类 和 用户自己定义的类 。3一个类主要包含两个要素: 数据成员 和 成员方法 。4创建包时需要使用关键字 package 。5类中的 构造 方法是一个特殊的方法,该方法的方法名和类名相同。6如果用户在一个自定义类中未定义该类的构造方法,系统将为这个类定义一个默认构造方法。这个方法没有 形式参数 ,也没有任何 具体语句 ,不能完成任何操作。7静态数据成员被保存在类的内存区的 公共存储 单元中,而不是保存在某个对象的内存区中。因此,一个类的任何对象访问它时,存取到的都是 相同 (相同/不同)的数

17、值。8静态数据成员既可以通过 对象名 来访问,也可以通过 类名 直接访问它。9定义常量时要用关键字 final ,同时需要说明常量的 数据类型 并指出常量的 具体值 。10方法体内定义变量时,变量前不能加 修饰符 ;局部变量在使用前必须 明确赋值 ,否则编译时会出错;而类变量在使用前可以不用赋值,它们都有一个 默认 的值。11static方法中只能引用 static 类型的数据成员和 static 类型的成员方法;而非static类型的方法中既可以引用 static 类型的数据成员和成员方法,也可以引用非static 类型的数据成员和成员方法。12引用static类型的方法时,可以使用 类名

18、做前缀,也可以使用 对象名 做前缀。13当程序中需要引用java.awt.event包中的类时,导入该包中类的语句为 import java.awt.event.*。14定义类时需要 class 关键字,继承类时需要 extends 关键字,实现接口时需要关键字 implements 。三、编程题1编一个程序,程序中包含以下内容:一个圆类(Circle),包含: 属性:圆半径radius;常量:PI。 方法:构造方法;求面积方法area();求周长方法:perimeter()。主类(X4_3_1),包含: 主方法main(),在主方法中创建圆类的对象c1和c2并初始化,c1的半径为100,c1

19、的半径为200,然后分别显示两个圆的面积和周长。【编程分析】按照要求创建Circle类,其中的半径可以定义为int类型,PI定义为final static double类型,求面积和周长的方法都应定义为double类型,在构造方法中对radius进行初始化。【参考答案】public class X4_3_1 public static void main(String args) Circle c1 = new Circle(100); Circle c2 = new Circle(200); System.out.println(c1.area() = +c1.area()+tc1.peri

20、menter() = +c1.perimeter(); System.out.println(c2.area() = +c2.area()+tc2.perimenter() = +c2.perimeter(); class Circle int radius; final static double PI=3.14; Circle(int r) radius = r; double area() return PI*radius*radius; double perimeter() return 2*PI*radius; 【运行结果】c1.area() = 31400.0 c1.perimen

21、ter() = 628.0c2.area() = .0 c2.perimenter() = 1256.02编一个程序,程序中包含以下内容:一个学生类(Student),包含:属性:学号s_No,姓名s_Name,性别s_Sex,年龄s_Age。方法:构造方法,显示学号方法showNo(),显示姓名方法showName(),显示性别方法showSex(),显示年龄方法showAge(),修改年龄方法modifyAge()。主类(X4_3_2),包含:主方法main(),在其中创建两个学生对象s1和s2并初始化,两个对象的属性自行确定,然后分别显示这两个学生的学号、姓名、性别、年龄,然后修改s1的

22、年龄并显示修改后的结果。【编程分析】按照要求首先编写Student类,其中的属性和方法根据实际情况选择相应的类型和权限修饰符,要通过方法来修改年龄,因此s_Age属性应该为private类型,否则可以直接在主类中进行修改,就没有必要使用方法了。【参考答案】public class X4_3_2 public static void main(String args) Student s1 = new Student(101,张三,男,18); Student s2 = new Student(102,李四,女,16); System.out.println(第1个学生的信息为:); s1.sh

23、owNo(); s1.showName(); s1.showSex(); s1.showAge(); System.out.println(第2个学生的信息为:); s2.showNo(); s2.showName(); s2.showSex(); s2.showAge(); System.out.println(修改第1个学生的年龄:); s1.modifyAge(24); System.out.println(第1个学生的年龄修改为:); s1.showAge(); class Student private int s_No; private String s_Name; private

24、 String s_Sex; private int s_Age; Student(int no, String name, String sex, int age) s_No = no; s_Name = name; s_Sex = sex; s_Age = age; void showNo() System.out.println(学号:+s_No); void showName() System.out.println(姓名: + s_Name); void showSex() System.out.println(性别: + s_Sex); void showAge() System.

25、out.println(年龄: + s_Age); void modifyAge(int newAge) s_Age = newAge; 【运行结果】第1个学生的信息为:学号:101姓名:张三性别:男年龄:18第2个学生的信息为:学号:102姓名:李四性别:女年龄:16修改第1个学生的年龄:第1个学生的年龄修改为:年龄:24第5章一、选择题1已知有下面类的说明:public class X5_1_1 extends x private float f =10.6f; int i=16; static int si=10; public static void main(String args)

26、 X5_1_1 x=new X5_1_1(); 在main()方法中,下面哪条语句的用法是正确的?( A )Ax.f Bthis.si CX5_1_1.i DX5_1_1.f【解析】由于x是在main方法内部定义的对象,因此它可以引用类的非static类型的属性,因此选A,而this和super不能在main方法中使用,使用类名只能引用本类的静态属性,因此B、C、D不对。2下列程序的运行结果是( C )。public class X5_1_2 extends x int ab() static int aa=10; aa+; System.out.println(aa); public sta

27、tic void main(String args) X5_1_2 x=new X5_1_2(); x.ab(); A10 B11C编译错误 D运行成功,但不输出【解析】方法体内的局部变量不能使用static修饰符。3下面关于接口的说法中不正确的是( C )。A接口中所有的方法都是抽象的B接口中所有的方法都是public访问权限C子接口继承父接口所用的关键字是implementsD接口是Java中的特殊类,包含常量和抽象方法【解析】子接口继承父接口所用的关键字也是extends,只有类实现接口时才使用implements。4区分类中重载方法的依据是( A )。A形参列表的类型和顺序 B不同的形

28、参名称C返回值的类型不同 D访问权限不同【解析】形参表的类型和顺序不同时区分重载方法的唯一标志。5子类对象能否直接向其父类赋值?父类对象能否向其子类赋值?( B )A能,能 B能,不能 C不能,能 D不能,不能【解析】子类对象可以直接赋值给父类对象,而父类对象不能直接赋值给子类对象。6Java语言类间的继承关系是( A )。A单继承 B多重继承 C不能继承 D不一定【解析】Java语言类间的继承关系是单继承,但一个类可以实现多个接口。7Java语言接口间的继承关系是( B )。A单继承 B多重继承 C不能继承 D不一定【解析】Java语言接口间的继承关系允许多重继承。8一个类实现接口的情况是(

29、 A )。A一次可以实现多个接口 B一次只能实现一个接口C不能实现接口 D不一定【解析】Java语言允许一个类一次实现多个接口。9定义外部类的类头时,不可用的关键字是( C )。Apublic Bfinal Cprotected Dabstract【解析】定义外部类时不能使用protected关键字。10如果局部变量和成员变量同名,如何在局部变量作用域内引用成员变量?( B )A不能引用,必须改名,使它们的名称不相同B在成员变量前加this,使用this访问该成员变量C在成员变量前加super,使用super访问该成员变量D不影响,系统可以自己区分【解析】this可以用来引用本类对象。11下面说法不正确的是( B )。A抽象类既可以做父类,也可以做子类Babstract和final能同时修饰一个类C抽象类中可以没有抽象方法,有抽象方法的类一定是抽象类或接口D声明为final类型的方法不能在其子类中重新定义【解析】abstract和final不能同时修饰一个类,因为abstract类需要子类,而final类不能有

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1