还剩16页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
Java程序设计教程第3版课后答案答对象是客观世界中的某个具体事物类是具有共同特性和行为的事物的抽象,是一种特殊数据类型在类中包含了数据和与数据有关的操作(方法)对象是类的实例举例说明类(静态)成员的特点答
1.特点一:静态变量的值是共享比如说A类中有个静态变量V_AA类创建了两个实例ab假如给实例a的变量V_A赋值,如a.V_A=lo那么这时候查看实例b.V_A变量的值也为1也就是说A对象实例化的两个类共享同一个变量值
2.特点二:不须要对象实例化就可以运用比如A类中的静态变量V_A可以用A.V_A的形式运用Java中的包和Windows的文件夹有什么关系?答书目层次结构特殊类似,包对应着Windows文件系统的书目层次结构类的成员的访问权限和包的关系答类的成员的权限用权限关键字设置,类的成员的权限和包的关系如下权限Public、protected、默认的同一包允许访问权限private同一包也不允许访问权限Public、protected的不同包子类允许访问权限默认、private的不同包子类不允许访问方法的重载和覆盖的区分答重载与覆盖的区分
1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系
2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系
3、覆盖要求参数列表相同;重载要求参数列表不同
4、覆盖关系中,调用那个方法体,是依据对象的类型对象对应存储空间类型来确定;重载关系,是依据调用时的实参表与形参表来选择方法体的在声明一个类变量时,前面必需要加上一static修饰符_import—语句可以导入Java的好用包中的全部类个表达式输出角度30°的余弦值_Math.cos30*
3.14/180_
5、为类Class1创建一个静态整型变量s_data—staticints_data写出抽象类lamAbstract的类头定义语句_publicabstraactclasslamAbstract_定义一个抽象方法abstractMethod没有形式参数,返回值为布尔型变量—publicabstractbooleanabstractMethod_写出定义最终类lamFinal的类头定义语句_finalclasslamFinal定义浮点常量PL其取值为
3.1415926_floatPI=
3.1415926f
三、选择题
1、有关类的说法正确的是A.类具有封装性,所以类的数据是不能被访问的B.类具有封装性,但可以通过类的公共接口访问类中的数据C.声明一个类时,必需用public修饰符D.每个类中,必需有main方法,否则程序无法运行
2、将类的成员的访问权限设置为默认的,则该成员能被A.同一包中的类访问B.其他包中的类访问C.全部的类访问B.全部的类的子类访问
3、下面是正确的方法重载的是intfunintafloatb{}floatfunintafloatb{}intfunfintafloatb{}floatfunintxfloaty{}floatfunfloata{}floatfunfloatafloatb{}floatfun1intafloatb{}floatfun2intafloatb{}
4、下面关于继承的说法正确的是A.超类的对象就是子类的对象一个类可以有几个超类一个类只能有一个子类一个类只能有一个超类
5、下面关于多态性的说法正确的是A.一个类中,不能有同名的方法B.子类中不能有和父类中同名的方法C.子类中可以有和父类中同名且参数相同的方法D.多态性就是方法的名字可以一样,但返回的类型必需不一样第四章、思索题
1、Applet与Application的区分答Application是一种可独立运行的程序,Applet是一种存储于Internet/Intranet服务器Server上的Java程序,可以被多个客户机下载并在客户端由阅读器供应的Java虚拟机JVM运行Applet必需通过〈applet〉标签嵌入HTML程序在阅读器中运行
2、小应用程序在其生命周期中,initstartstop、destroy、paint方法执行时机答init初始化,是小应用程序的入口点执行时机是在第一次阅读web页面时执行一次Stat启动对应的方法,执行时机是阅读器载入程序时执行init0之后、离开上述web页面之后重新回来、运用阅读器的缩放按钮变更窗口大小Stop执行时机是离开小应用程序所在web页面、刷新该页面、关闭该页面、图标化阅读器Destroy执行时机关闭web页面时执行一次
3、事务处理的基本编程方法?答用于监听xxEvent事务的编程的基本方法如下1第一步程序起先加上importjava.awt.event.*语句对java.awt中的组件实现事务处理必需都引入java.awt.event包其次步:实现事务监听者所对应的接口,即添加:implementsxxListener事务所对应的接口第三步设置事务监听者事务源.addxxListener事务监听者第四步编程实现对应事务接口中的全部方法
4、Swing与awt的异同答awt与swing都是Java用于实现图形用户界面的类库,swing是JFC的一部分,它在技术上比awt迈进了一步;在外观效果上也比awt有进步
二、填空题:小应用程序的公共类必需是」的子类小应用程序生命期中_init一方法只执行一次,_start一方法可被反复执行多次
3、将复选框用」进行分组即得到单选钮、弧、多边形等绘图方法在包第五章
一、思索题
1、什么时候发生异样?答:在程序运行过程中,任何中断正常程序流程的状况都是错误或异样例如,发生下列状况时,会出现异样■想打开的文件不存在;网络连接中断;操作数超出预定范围,例如,除数为0;数组元素下标越界
2、要被监视异样的代码必需放在哪个语句块中答Java中异样处理的一般形式是try(〃被监视的代码块}catch(异样类1对象名1){〃异样类1的异样处理代码块}
3、catch起什么作用?答catch实现异样类型的捕获
4、异样未被捕获会发生什么结果答若有匹配则执行相应的处理代码,然后接着执行本try块之外的其他程序否则这个没有被程序捕获的异样将由缺省处理程序处理,缺省处理程序将显示异样的字符串、异样发生位置等信息,终止整个程序的执行并退出
5、throws起什么作用?答编程人员可以用throw语句自行抛出异样,throw语句的语法如下throwThrowable类或其子类的对象throws语句用于声明一个方法可能引发的全部异样,这些异样是要求调用该方法的程序处理的其语法为返回类型方法名(参数表)throws异样类型表{〃方法体}
6、在嵌套的try块中,内部代码块没有捕获的异样如何处理?答在某个方法中,某一个try块又包含另一try块,当内层try块抛出异样对象时,首先对内层try块的catch语句进行检查,若与抛出异样类型匹配则由该catch处理,否则由外层try块的catch处理第八草
一、思索题
1、线程有哪些特点?答:线程就是比进程更小的运行单位一个进程可以被划分成多个线程在一个支持线程的系统中,线程是处理器的调度对象一个进程中的线程共享进程的资源线程之间的通信要比进程之间的通信便利
2、什么是线程的生命周期?线程的状态是怎样在各种状态下转换的?答每个线程都存在一个从创建、运行到消亡的生命周期在生命周期中,一个线程具有创建、可运行、运行中、堵塞和死亡五种状态Thread类中的方法可以变更线程的状态
3、有哪些数据流和文件读写有关?答:
4、缓冲流在数据输入输出中的作用是什么?答
5、当到达文件末尾时,read返回什么?答
二、选择题
1、关于线程,下面说法对的是()A、一个线程就是一个正在执行的程序B、线程和线程之间无法通信C、进程划分成线程,可以削减并发限制的时间D、一个程序只有一个线程
2、用实现Runnable接口的方法创建线程时要()A、干脆创建线程对象B、实现start方法C、通过run方法,启动线程对象D、先创建线程的目标对象,再通过目标对象创建线程对象
3、Thread类中的wait方法使得()A、线程终止运行B、进入可运行状态,在队列中等待执行C、线程进入死亡状态D、线程进入堵塞状态
4、用文件字节输出流对文件进行写操作时,先要创建文件输出流对象并打开文件,文件数据流的构造方法是:publicStringnameBooleanappendthrows其中的参数append的值为true时表示()A、将原文件的内容覆盖B、在原文件的尾部添加数据C、在原文件的指定位置添加数据D、创建一个新文件第一章填空题:
1、Java源程序文件的扩展名是_java_;Java源程序经编译后生成Java字节码文件,其扩展名是_class
2、在Java语言中,将源代码翻译成_java字节码文件—时产生的错误称为编译错误,而将程序在运行中产生的错误称为运行错误
3、一个Application源程序文件名为MyPro.java假如运用Sun公司的Java开发工具SDK编译该源程序文件并运用其虚拟机运行这个程序的字节码文件,应当依次执行如下两个叮嘱_javacMyPro.java__javaMyPro_.已知inta=8b=6;贝ij表达式++a-b++的值为—3—.已知booleanbl=trueb2;贝!)表达式!blb2||b2的值为_false_o.表达式(18-4)/7+6的运算结果是_
87、表达式52882336的运算结果是_false_思索题
1、源程序是什么?答源程序文件的三要素
一、以package语句起先的包声明语句为可选,若有,只能有一个且必需是第一句,若没有,此文件将放到默认的当前书目下
二、以import语句起先的类引入声明语句,数量可以是随意个
三、class定义和interface定义中,由public起先的类定义只能有一个且要求源程序文件名必需与public类名相同,Java语言对字符的大小写敏感
2、编译的作用是什么?答用Java语言编辑的源程序的执行方法是接受先经过编译器编译、再利用说明器说明的方式来运行的
3、什么是Java的byte-codes它的最大好处是什么?答Java源程序经过编译器编译,会被转换成一种我们将它称之为“字节码byte-codes的目标程序“字节码”的最大特点便是可以跨平台运行
4、机器语言程序、高级语言程序以与可表示成Java字节码程序之间的区分是什么?答机器语言是二进制编码表示,可以用机器干脆运行高级语言是贴近自然语言的,必需编译或说明才能让计算机运行,并且程序运行依靠该语言处理系统可表示成java字节码的程序必需经过编译产生字节码程序java字节码程序可以实现跨平台运行
5、试简述J2SE、J2ME与J2EE的区分答⑴JavaME——JavaMicroEdition用于嵌入式Java消费电子平台,其内存资源受限不论是无线通讯、手机、PDA等小型电子装置都可接受其作为开发工具与应用平台JavaSEJavaStandardEdition是Java最通行的版本,是用于工作站、PC机的Java标准平台JavaEEJavaEnterpriseEdition可扩展的企业应用Java平台,它供应了企业e-Business架构与WebServices服务,其开放的标准和优越的跨平台实力使其适于开发大规模的、分布式联网应用程序以与基于Web的应用程序
6、练习运用阅读器查看JavaAPI文档
7、SDK的编译叮嘱是什么?答javac
8、Java标识符的命名有什么规定?答
一、用字母、下划线或“$”作为开头字符,但数字不能作为变量的开头字符;
二、标识符中间不能运用空格;
三、不能运用Java的操作符,如“+,,、”—,,、“*,,、“/,,等;
四、用户自定义标识符不能运用Java的关键字;
五、严格区分大小写,即my_var和My_var将被认为是两个不同的标识符例className$member.variable、var_numvarObj1合法
9、如何正确地定义变量▲变量命名遵循标识符的命名规则■变量名是以小写字母开头,而类名是以一个大写字母开头的I假如变量名包含了多个单词,而每个单词要组合在一起,则在每个单词的第一个字母大写,比如isVisible■下划线(_)可以处在变量的任何地方,但是一般地它只用在标识符常量中分别单词,因为标识符常量的常量名都是用大写字母的,利用下划线可以看得更清楚■一般来说,变量名命名要见名知义,不宜太简洁,但也不宜过长
10、当Java程序的表达式中有类型不符合的状况时,有哪些规则可以处理类型转换答Java允许它的用户有限度地进行数据类型转换处理转换的方式可分为“自动类型转换”和“强制类型转换”两种A
1.自动类型转换:整型、实型和字符型数据须要进行混合运算时,首先须要把不同类型的数据转化为同一类型,然后才能进行运算转换时,系统将依据数据类型的表示范围由小到大的转换原则自动进行数据类型的表示范围由小到大的依次依次为:A
2.强制类型转换:当表示范围大的数据类型要转换成表示范围小的数据类型时,须要用到强制类型转换其次章
一、思索题
1、什么是结构化程序设计?答结构化程序设计有三种基本的程序流程结构依次、选择、循环
2、运用while和do...while循环有什么不同?答dwhile循环语句功能与while语句类似,但dowhile语句的循环终止推断是在循环体之后执行,即,它总是先执行一次循环体,然后推断条件表达式的值是否为真,若为真,则接着执行循环体;否则循环到此结束与dwhile语句所不同的是,while语句假如起先时的判别表达式为假,则可能一次都不执行循环体而干脆结束循环
3、简述break和continue语句的区分答在Java中可以用break语句强行退出循环,接着执行循环外的下一个语句假如break出现在嵌套循环中的内层循环,则break语句只会退出当前的一层循环,以for循环流程为例在循环主体中有break语句时当程序执行到break即会退出循环主体,到循环外层接着执行程序运行到continue语句时,就会停止循环体中剩余语句的执行,而回到循环的起先处接着执行循环
4、一维数组与二维数组如何声明、赋值与输出答一维数组声明语法格式如下:type数组名[]=newtype[个数n]对一维数组的赋值有如下方法:
1.在声明时干脆赋值,语法格式为:type数组名[卜{数值1数值2……数值n};
2、在赋值声明的时候,不须要给出数组的长度,编译器会视所给的数值个数来确定数组的长度,例如:intmm[]={2468101214161820}若是对数组的元素进行有规律的赋值,则可以运用循环的方式进行要输出访用数组里的元素,可以通过利用其下标来达到目的,只有一个下标值的数组就称为一维数组Java数组的下标编号从0起先假如声明的数组元素个数为n则数组元素下标的变更只能是〜n-1在Java中,因为数组元素可以声明成任何类型,因此假如一维数组的元素还是一维数组的话,这种数组就被称为二维数组二维数组声明语法格式如下type数组名[][]=newtype[个数][个数];对于二维数组元素的赋值,同样可以在声明的时候进行例如intssa[川={{20252622}{23242028}};二维数组赋值与输出可以借助一维数组
二、填空题
1、下面的程序运行后,其输出结果是_#*#*#_publicclassYuedul{publicstaticvoidmainString[]args{inti;fori=l;i6;i++{ifi%2==l{System.out.print#;continue;System.out.printH*H;System.out.printin;
2、下面的程序经运行后,其输出结果是xl=10x2=6publicclassYuedu3{publicstaticvoidmainString[]args{intxy;System.out.printnxl=H+add46;System.out.printnx2=H+add3add12;|staticintaddintxintyreturnx+y;
3、下面的程序经运行后,其输出结果是_72—publicclassYuedu4{publicstaticvoidmainString[]args{System.out.printffun4;}staticintfunintnintt;ifn==O||n==lt=3;elset=n*funn-l;returnt;}
4、下面的程序经运行后,其输出结果是_y=lx=0_publicclassYuedul{publicstaticvoidmainString[]args{intxy;x=y=O;do{y++;x*=x;}whilex0y5;System.out.printlny=+y+x=+x;}!第三章
一、思索题
1、类和对象之间的关系。