Java并发编程实践课程习题与答案(1-7章部分).doc
《Java并发编程实践课程习题与答案(1-7章部分).doc》由会员分享,可在线阅读,更多相关《Java并发编程实践课程习题与答案(1-7章部分).doc(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Java并发编程实践课程习题与答案(1-7章部分)第一部分:Java面向对象基础程序设计第1章 Java语言概述1、Java源程序是由什么组成的?一个程序中必须有public类吗?Java源文件的命名有什么规定?2、应用程序和小应用程序的主要区别是什么?3、开发与运行应用程序需要经过哪些主要步骤和过程?4、安装JDK之后如何设置JDK系统的PATH,CLASSPATH?他们的作用是什么?5、Java语言特点是什么?6、分别用JDK、GEL和Eclipse编写能输出“Hello World!”的Java应用程序。第2章 Java面向对象程序设计基础1、什么是类?什么是对象?对象和类是什么关系?2
2、、什么是方法?结构方法和一般方法有什么区别?设计方法应考虑哪些因素?3、为什么要将类进行封装,封装的原则是什么?4、创建一个有两个方法的类,要求其中第一个方法两次调用第二个方法,第一次不使用this,第二个使用this。5、要求设计一个矩形类Rectangle,要求实现构造方法的多态。并利用这些构造方法实例化不同的对象,并输出相应的信息。6、计算出Fibinacii 序列的前n项,n的值要求从命令行输入。Fibinacii 序列的前两项是1,后续每项的值都是该项的前两项之和。即 F(n)=F(n-1)+F(n-2) F(1)=F(2)=1;7、 什么是继承?什么是父类?什么是子类?继承的特性可
3、给面向对象编程带来什么好处?什么是单重继承?什么是多重继承?8、“子类的成员变量和成员方法的数目一定大于等于父类的成员变量和成员方法的数目”,这种说法是否正确?为什么?9、什么是方法的覆盖?方法的覆盖与域的隐藏有何不同?与方法的重载有何不同?10、什么是多态?面向对象程序设计为什么要引人多态的特性?使用多态有什么优点?11、父类对象与子类对象相互转化的条件是什么?如何实现它们的相互转化?12、一个类如何实现接口?实现某接口的类是否一定要重载该接口中的所有抽象方法?13、编写求解几何图形(如直线、三角形,矩型,圆,多边型)的周长,面积的应用程序,要求用到继承和接口等技术。14、编写求解一元多次方
4、程(如一元一次,一元二次,一元高次方程)的解。15、找出以下代码有错误的部分 public int searchAccount(int number25) number =new int15; for(int i=0;iProject。当 New Project 对话框出现时,选择左面的 Java。标准 Eclipse 只有一种 Java 项目类型,名为“Java Project”。选择 Java Project,在提示项目名称时输入“Hello”,然后按 Finish。右键单击“Hello”项目,选择 New=Class,如图 2 所示。在随后出现的对话框中,键入“Hello”作为类名称。在
5、“Which method stubs would you like to create?”下面,选中“public static void main(String args)”复选框,然后按 Finish。图 2. 在 Java 透视图中创建新类这样将在编辑器区域创建一个包含 Hello 类和空的 main() 方法的 .java 文件,如图 3 所示。然后向该方法添加如下代码 一旦代码无错误地编译完成,就能够从 Eclipse 菜单上选择 Run 来执行该程序。这时会出现一个具有适当默认设置的 Launch Configurations 对话框;请按右上角的 Run 按钮。一个新的选项卡式
6、窗格将出现在下面的窗格(控制台)中,其中显示了程序的输出。第2章 习题及思考题1、什么是类?什么是对象?对象和类是什么关系?答:类是抽取了同类对象的共同属性和行为形成的对象或实体的“模板”。 对象是现实世界中实体的描述,是其自身所具有的状态特征及可以对这些状态施加的操作结合在一起所构成的独立实体。类和对象之间的关系是抽象和具体的关系:类表达的是一种抽象的概念,它描述了该类对象的共同特征;而对象是具体事物,以类为模板来生成,它具有自己的状态。举例:类与对象的关系犹如零件的图纸与按图纸制造出的零件关系一样;图纸(类)描述了零件(对象)的共同特征,每个零件(对象)又有自己的个性,如加工精度的不同等等
7、2、什么是方法?方法的结构是怎样的?设计方法应考虑哪些因素?答:方法是Java类的一个组成部分,通过类的方法改变对象的状态。 方法的结构:方法修饰符 返回值类型 方法名(形参列表)throws异常列表 方法体; 设计方法应考虑因素有:(1) 方法名是Java中任意的标识符,按照命名的约定,方法名应该是有意义的动词或动词短语,它的第一个字母一般要小写,其他有意义的单词的首字母要大写,其余字母小写。 (2) 返回值类型可以是任意的Java类型,甚至可以是定义此方法的类。如果方法没有返回值,则用void表示。 (3) 形式参数列表是可选的。如果方法没有形式参数,就用一对小括号“()”表示。形式参数列
8、表的形式如下: (类型 形参名,类型 形参名,) (4) throws异常列表规定了在方法执行中可能导致的异常。3、创建一个有两个方法的类,要求其中第一个方法两次调用第二个方法,第一次不使用this,第二个使用this。答:class Rectangle /矩形类 int width; / 矩形的宽 int usethis(int width) /返回宽度的函数 this. width= width; /指自己这个对象 return width; int unusethis(int width) int w=width; return w; public static void main(St
9、ring args) Rectangle r=new Rectangle(); /类对象的实例化 System.out.println(It is about the node of this.); /输出语句 System.out.println(r.usethis(1); System.out.println(r.unusethis(2); 运行结果: It is about the node of this. 1 2 4、要求设计一个矩形类Rectangle,其中含有多个构造方法。利用这些构造方法实例化不同的对象,并输出相应的信息。答:import java.io.*; class Re
10、ctangle /矩形类 private int width; /矩形的宽度 private int length; /矩形的长度 Rectangle() /矩形的不带参数的构造函数,缺省的给出长(30)和宽(20) length=30;width=20; Rectangle(int l,int w) /矩形的带参数的构造函数 length=l;width=w; Rectangle(Rectangle r) /此构造方法以另一个Rectangle作为参数 width=r.width(); /通过对象调用函数并附值给相应变量 length=r.length(); int width() /返回宽
11、度 return width; int length() /返回长度 return length; public class CRctngle public static void main (String args ) Rectangle x1=new Rectangle(); /声明类的对象并实例化 Rectangle x2=new Rectangle(50,40); /声明类的对象并初始化 Rectangle x3=new Rectangle(x1); System.out.println(x1.length(); System.out.println(x1.width(); Syste
12、m.out.println(x2.length(); System.out.println(x2.width(); System.out.println(x3.length(); System.out.println(x3.width(); 运行结果:302050403020体会:此程序中共定义了3个构造方法:Rectangle()、Rectangle(int l,int w) 、Rectangle(Rectangle r) ,其中Rectangle()是没有参数的,Rectangle(int l,int w)以常数作为参数,Rectangle(Rectangle r)是以对象最为参数。构造函
13、数调用时在用new运算符创建类对象是由系统自动完成的,构造函数的参数传递和形实结合也是由系统在调用的同时自动完成。5、计算出Fibinacii 序列的前10项,Fibinacii 序列的前两项是1,后续每项的值都是该项的前两项之和。即 F(n)=F(n-1)+F(n-2) F(1)=F(2)=1;答:class Fibi public long fibinacii(int n) long c=0;if(n=1|n=2)c=1;elsec=fibinacii(n-1)+fibinacii(n-2);return c;public class Example4_5 public static vo
14、id main(String args) Fibi a=new Fibi();for(int i=1;i=10;i+) System.out.print( +a.fibinacii(i);6、 什么是继承?什么是父类?什么是子类?继承的特性可给面向对象编程带来什么好处?什么是单重继承?什么是多重继承? 解:继承是面向对象程序设计中两个类之间的一种关系。当一个类获取另一个类中所有非私有的数据和操作的定义作为它自己的部分或全部成分时,就称这两个类之间具有继承关系。被继承的类称为父类或超类,继承了父类或超类的所有数据和操作的类称为子类。 面向对象程序设计中的继承,可使得程序结构更加清晰,降低了编码和
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 并发 编程 实践 课程 习题 答案 部分
限制150内