JAVA程序设计案例教程(第二版)周怡 张英主编。第1章 习题答案

合集下载

Java程序设计案例教程(第二版)周怡、张英主编。第3章 习题答案

Java程序设计案例教程(第二版)周怡、张英主编。第3章 习题答案
1常量名全部采用大写字母2变量名对象名方法名包名等标识符全部采用小写字母如果标识符由多个单词构成则首字母小写其
习题 3
一、判断题 1.Java 的 各 种 数 据 类 型 占 用 固 定 长 度 , 与 具 体 的 软 硬 件 平 台 环 境 无 关 。 ( √ ) 难度:容易 参考出处: 3.2 节 2.用“+”可以实现字符串的拼接,用“-”可以从一个字符串中去除一个字符子串。(× ) 难度:容易 参考出处: 3.5 节 3.Java 不区分大小写的语言。(×) 难度:容易 参考出处: 3.1.1 节 4.Java 的 String 类的对象既可以是字符串常量,也可以是字符串变量。(√ ) 难度:容易 参考出处: 3.4 节 5.注释的作用是使程序在执行时在屏幕上显示//之后的内容。(√ ) 难度:容易 参考出处: 3.1.4 节 6.在 Java 的方法中定义一个常量要用 const 关键字。( × ) 难度:容易 参考出处: 3.4.1 节 二、选择题 1.Java 语言中语句是以 C 作为结束的。 A.句号 B.引号 C.分号 D.括号 2. 初次在医院进行挂号的患者需要提供其基本信息,其中年龄数据类型的定义形式为 A 。 A.int B.double C.char D.boolean 3.下面的 Java 的标识符哪个是合法的 A 。 A.$患者编号 B.患者 姓名 C.患者-年龄 D.1 患者婚否 4.关于数据类型转换,下面描述中错误的是 C 。 A.int 类型可以转换成 float 类型数据 B.long 类型可以转换成 short 类型数据 C.long 类型不可以转换成 short 类型数据 D.数据类型不一致时,必须进行数据类型的转换才能进行赋值 5.以下数据类型最高级的是 D 。 A.short B.int C.char D.float 6.设 int x = 1 , y = 2 则表达式 x+=++y 运行后 x 的值是 A 。 A.4 B.3 C.2 D.1 7.换行符的正确转义字符是 C 。 A./n B.\r C.\n D./r 三、填空题 1.整型类型的变量有字节型 、 短整型 、 整型 、 长整型 。 2.Java 中,逻辑常量的值有 true 和 false 。 3.表达式(15>20 ? 1 : 2)的值为 2 。 4.执行语句 int s=(int)123.45 之后,变量 s 的值为 123 。 5.现有 2 个 char 类型的变量 x='a',y=3,当执行 x=(char)(x+y);语句之后,x 的值应该是 100 。 6.Java 中定义常量必须使用的关键字是 final 。 四、简答题 1.标识符的定义规则有哪些?

Java程序设计案例教程(第二版)周怡、张英主编。第7章习题参考答案

Java程序设计案例教程(第二版)周怡、张英主编。第7章习题参考答案

第7章包与异常处理习题参考答案:一、判断题1.在编程中,可以不用进行异常的处理,因为有时发生的异常并不会影响程序的正常运行_____×__。

2.异常处理一般可用try ……catch语句进行处理的____√___。

3.try ……catch语句不能进行嵌套使用_×______。

4.如果觉得系统给出的异常类不够使用,也可能定义自己的异常类,自己定义的异常类一般继承Exception类(或其子类)___√____。

5.try……catch……finally语句中,三个关键字必须同时使用,才能达到异常处理的效果_____×__。

6.使用import 导入一包时,可以将这个包的子包也一并导入__×_____。

二、选择题1.异常是指___D____。

A.程序中的语法错误B.程序的编译错误C.程序执行过程中遇到的事先没有预料到的情况D.程序执行过程中遇到的事先没有预料到的情况,或程序事先定义好的可能出现的意外情况2.如果一个程序中有多个catch语句,程序会__C_____。

A.每个catch都会执行一次B.把每个符合条件的catch语句都执行一次C.找到适合的异常类型后就不再执行其它catch语句D.找到适合的异常类型后还要执行其它catch语句3.下列关于finally说法正确的是__C_____。

A.finally语句应该放在所有catch语句的前面B.finally语句应该放在所有catch语句的后面C.无论程序是否找到合适的catch匹配,都会去执行finallyD.如果程序在前面找到了多个适合的catch匹配,就不再执行finally语句了4.在一个方法内抛出异常时,应该使用下列哪个子句____A___。

A. throwB. catchC. finallyD. throws5.下列描述中,错误的一个是____B___。

A. 异常抛出点后的代码在抛出异常后不再执行B. 一个try代码段后只能跟有一个catch代码段C. try 一般要和catch联合使用D. 在编写程序过程中,要考虑对异常的处理6.一个catch语句段一定要和下列哪一项配合使用__A_____。

Java程序设计案例教程(第二版)周怡、张英主编。第12章 习题答案

Java程序设计案例教程(第二版)周怡、张英主编。第12章 习题答案

习题12一、单选题1. 答案:B 难度:容易参考出处:12.1节2. 答案:D 难度:较难参考出处:12.1.1节3. 答案:B 难度:一般参考出处:12.1.1节4. 答案:C 难度:一般参考出处:12.2.1节5. 答案:C 难度:一般参考出处:12.2.3节6.答案:D 难度:较难参考出处:12.2.2节7.答案:B 难度:一般参考出处:12.1节8.答案:A 难度:一般参考出处:12.2.2节9.答案:C 难度:一般参考出处:12.2节二、填空题1. 答案:记录难度:一般参考出处:12.1.1节2. 答案:数据库难度:容易参考出处:12.1节3. 答案:数据库难度:容易参考出处:12.1节4. 答案:表难度:容易参考出处:12.2.1节5.答案:向导自定义难度:较难参考出处:12.2.3节6.答案:close()方法难度:容易参考出处:12.3.3节三、问答题1.Java是通过什么来访问数据库的?JDBC2.JDBC是什么?JDBC是JAVA系统提供给用户在JAVA程序中操纵数据库的Java API,可以为不同数据库提供统一访问,它是一组由Java语言编写的类和接口组成。

3.以JDBC-ODBC方式访问数据库时,如何加载驱动程序?用Class.forName(“驱动程序名”)这种方式4.简述JDBC-ODBC方式访问数据库的基本步骤。

首先设置数据源,然后用Class.forName(“驱动程序名”)加载驱动程序,再以DriverManager.getConnection()方法连接数据库,接着用连接对象的方法createStatement()创建SQL语句对象。

以上过程完成后即可执行实际的SQL语句对数据库进行操作。

最后,要关闭SQL语句对象和数据库连接。

四、判断题1.答案:X难度:容易参考出处:12.2.3节2.答案:√难度:容易参考出处:12.2.5节3.答案:√难度:容易参考出处:12.2.3节4.答案:√难度:容易参考出处:12.2.1节5.答案:X难度:容易参考出处:12.3.3节6. 答案:√难度:容易参考出处:12.3.3节五、程序设计题1. 打开Access,创建一个空的数据库PatientDatabase.mdb。

JAVA语言程序设计教程第二版习题解答

JAVA语言程序设计教程第二版习题解答
1)– –a%b++ 2) (a>=1)&&a<=12?a:b) 3) f^(a>b) 4) (– –a)<<a。
【答】: Java的运算符主要由算术运算符、关系运算符、条件运算符、位运算符、逻 辑运算符以及赋值运算符。表达式由运算符、操作数和方法调用,按照语言 的语法规则构造而成的符号序列。 表达式的结构是: 1)– –a%b++的结果是:1 2)(a>=1)&&a<=12?a:b)的结果是:1 3)f^(a>b)的结果是:false 4)(– –a)<<a的结果是:0 5.Java中标准输入输出使用哪种系统类、使用哪个对象和方法?
对象“汽车”与对象“小汽车”是什么关系,对象“汽车”与“轮胎”又是什么关 系?
【答】: 对象“汽车”与对象“小汽车”具有继承关系,即对象“小汽车”继承了对象“汽 车”。“轮胎”是对象“汽车”的一个属性,所以对象“汽车”包含“轮胎”,二者 是包含关系。 简述Java语言的主要特点。
【答】: Java语言的主要特点:(1)简单性 (2)面向对象 (3)分布式 (4)健 壮性 (5)结构中立 (6)安全性 (7)可移植 (8)解释的(9)高性能 (10) 多线程 (11)动态性 5.简述Java语言与C/C++语言的主要差异。
public class Example02{ public static void main(String[] args){ System.out.print(0) int fib0=0; int fib1=1; int fib2=fib0+fib1 while(fib2<100){ fib0=fib1; fib1=fib2; fib2=fib1+fib0; System.out.print(","+fib1); } } } (3).产生0~20的随机整型,然后计算并打印它的结果:

Java语言程序设计 课后习题+答案

Java语言程序设计 课后习题+答案

第一章课后习题1.编译Java程序的命令是什么?2.执行Java程序的命令是什么?3.Java应用程序和小程序的区别是什么?4.编写一个application ,实现在屏幕上打印自己名字的功能。

第一章课后习题答案1.编译Java程序的命令是什么?答案:javac 源文件名2.执行Java程序的命令是什么?java 主类名3.Java应用程序和小程序的区别是什么?Java application⏹由Java解释器独立运行字节码⏹由专门的命令行启动程序执行⏹程序中有定义了main()方法的主类Java applet⏹不能独立运行,字节码必须嵌入HTML文档⏹当浏览器调用含applet的Web页面时执行⏹程序中含有java. applet. Applet 类的子类4.编写一个application ,实现在屏幕上打印自己名字的功能。

class Test{public static void main(String[] args){System.out.println(“张三”);}}第二章课后习题(1)一、选择题1.下列变量定义错误的是。

A) int a; B) double b=4.5; C) boolean b=true; D)float f=9.8;2.下列数据类型的精度由高到低的顺序是:a)float,double,int,longb)double,float,int,bytec)byte,long,double,floatd)double,int,float,long3.执行完下列代码后,int a=3;char b='5';char c=(char)(a+b);c的值是?A)’8’ b)53 c)8 d)564.Unicode是一种_____________A) 数据类型 B)java包 C)字符编码 D)java类5.6+5%3+2的值是___________A)2 B)1 C) 9 D)106.下面的逻辑表达式中合法的是__________A)(7+8)&&(9-5) B)(9*5)||(9*7) C)9>6&&8<10 D)(9%4)&&(8*3) 7.java语言中,占用32位存储空间的是__________。

java程序设计教程第二版课后答案

java程序设计教程第二版课后答案

java程序设计教程第二版课后答案【篇一:《java程序设计》课后习题参考答案】参考答案――武汉大学出版社习题1参考答案1.java语言的特点有哪些??答:参考1.1.2防止直接访问数据变量看起来有些奇怪,但它实际上却对使用类的程序质量有极大的好处。

既然数据的单个项是不可访问的,那么惟一的办法就是通过方法来读或写。

因此,如果要求类成员内部的一致性,就应该通过类本身的方法来处理。

这种数据隐藏技术就是面向对象的重要特性——封装。

它将类的外部界面与类功能的实现区分开来,隐藏实现细节,(通过公共方法)保留有限的对外接口,迫使用户使用外部界面,通过访问接口实现对数据的操作。

即使实现细节发生了改变,还可通过界面承担其功能而保留原样,确保调用它的代码还继续工作,这使代码维护更简单。

2.简述封装的优点。

?答:封装是一个简单而有效的思想,优点有:(1)模块化,对内成为一个结构完整、可进行自我管理、自我平衡、高度集中的整体。

(2)信息隐蔽,对外则是一个功能明确、接口单一、可在各种适合的环境下都能独立工作的有机单元。

面向对象的程序设计实现了对象的封装,使得用户不必关心诸如对象的行为是如何实现的这样一些细节。

通过对对象的封装,实现了模块化和信息隐藏,有利于程序的可移植性和安全性,同时也有利于对复杂对象的管理。

类的封装性使得代码的可重用性大为提高,这样的有机单元特别适合构建大型标准化的软件系统,具有很高的开发效率。

3.java的基本工具有哪些??(1) javac 编译器(2) java 解释器(3) jdb java 语言调试器(4) javadoc api文档管理器(5) javah 头文件生成器(6) appletviewer 小应用程序浏览器(7) javap 类文件反汇编器4.java开发环境是如何配置的?答:对于windows 2000以上版本的操作系统,可以打开[控制面板]窗口,双击其中的[系统]图标,在[系统特性]窗口中单击[高级]选项卡,进而单击[环境变量]按钮。

java程序设计使用教程(第2版)参考答案

java程序设计使用教程(第2版)参考答案
第一章习题答案
一、简答题
1.Java语言有哪些特点?主要用于能够哪些方面的软件开发?
特点:(1)面向对象,(2)平台无关性,(3)分布式,(4)可靠性和安全性,(5)多线程,(6)简单性,(7)健壮性,(8)高性能,(9)灵活性。
适用范围:(1)所有面向对象的应用开发,包括面向对象的事件描述、处理、综合等。(2)计算过程的可视化、可操作化的软件的开发。(3)动态画面的设计,包括图形图象的调用。(4)交互操作的设计。(5)Internet 的系统管理功能模块的设计,包括 Web 页面的动态设计、管理和交互操作设计等。(6)Intranet上的软件开发(直接面向企业内部用户的软件)。(7)与各类数据库连接查询的 SQL 语句实现。(8)网络通信与移动通信,网络集成方面。
// 1
// 1 1
// 1 2 1
// 1 3 3 1
// 1 4 6 4 1
// 1 5 10 10 5 1
public class XT00206 {
public static void main(String args[]) {
int i,j,temp;
int a[][]=new int[8][8];
JVM是运行Java程序必不可少的机制,编译后的Java程序指令并不直接在硬件系统上CPU上执行,而是由JVM执行。JVM是编译后的Java程序和硬件系统之间的接口,程序员可以把JVM看成一个虚拟的处理器,它不仅解释执行编译后的Java指令,而且还要进行安全检查,它是Java程序能在多平台间进行无缝移植的可靠保证,同时也是Java程序的安全检验引擎。
}//end speak()
}//end class
第二章习题答案
一、简答题

java语言程序设计教程第二版习题解答

java语言程序设计教程第二版习题解答

习题一‎1.‎简述面向‎对象软件开‎发方法的重‎要意义。

‎‎【答】:‎面向对‎象的软件开‎发方法按问‎题论域来设‎计模块,以‎对象代表问‎题解的中心‎环节,力求‎符合人们‎日常的思维‎习惯,采用‎―对象+消‎息‖的程序‎设计模式,‎降低或分解‎问题的难度‎和复杂性‎,从而以较‎小的代价和‎较高的收益‎获得较满意‎的效果,满‎足软件工程‎发展需要。

‎‎2.解释‎下面几个概‎念:‎1)对象‎2)实例‎3)类 4‎)消息 5‎)封装 6‎)继承 7‎)多态‎【答】:‎1)‎对象:就‎是现实世界‎中某个具体‎的物理实体‎在计算机中‎的映射和体‎现,是由属‎性和操作‎所构成的一‎个封闭整体‎。

‎2)实例‎:是对象在‎计算机内存‎中的映像。

‎3‎)类:是‎描述对象的‎―基本原型‎‖,是描述‎性的类别或‎模板,即对‎一组对象的‎抽象。

它‎定义一组对‎象所能拥有‎的共同特征‎,用以说明‎该组对象的‎能力与性质‎。

‎4)消息‎:消息是对‎象之间进行‎通信的一种‎数据结构。

‎5‎)封装:‎封装性是保‎证软件部件‎具有优良的‎模块性的基‎础。

面向对‎象的类是封‎装良好的‎模块,类定‎义将其说明‎(用户可见‎的外部接口‎)与实现(‎用户不可见‎的内部实现‎)显式地‎分开,其内‎部实现按其‎具体定义的‎作用域提供‎保护。

‎6)‎继承:继承‎性是子类自‎动共享父类‎数据结构和‎方法的机制‎,这是类之‎间的一种关‎系。

‎7)多‎态:多态性‎是指一个名‎字具有多种‎语义,即指‎同一消息为‎不同对象所‎接受时,可‎以导致不‎同的操作。

‎‎3.‎对象―汽车‎‖与对象―‎小汽车‖是‎什么关系,‎对象―汽车‎‖与―轮胎‎‖又是什么‎关系?‎‎【答】:‎对象‎―汽车‖与‎对象―小汽‎车‖具有继‎承关系,即‎对象―小汽‎车‖继承了‎对象―汽车‎‖。

―轮‎胎‖是对象‎―汽车‖的‎一个属性,‎所以对象―‎汽车‖包含‎―轮胎‖,‎二者是包含‎关系。

java程序设计第二版课后答案

java程序设计第二版课后答案

java程序设计第二版课后答案Java程序设计第二版课后答案涵盖了多个章节,每个章节都包含了不同的编程概念和练习题。

以下是一些常见章节的课后答案概要,以供参考:第1章:Java简介- 1.1 Java的起源和特点- 1.2 Java平台的组成- 1.3 Java开发环境的搭建第2章:基本语法- 2.1 数据类型- 2.2 变量声明- 2.3 运算符- 2.4 控制语句(if, switch, loop)第3章:控制流程- 3.1 条件语句(if-else, switch-case)- 3.2 循环语句(for, while, do-while)- 3.3 跳转语句(break, continue, return)第4章:数据结构- 4.1 数组的定义和使用- 4.2 字符串的处理- 4.3 集合框架简介第5章:面向对象编程- 5.1 类和对象- 5.2 构造方法- 5.3 继承- 5.4 封装和多态第6章:异常处理- 6.1 异常的概念- 6.2 异常的分类- 6.3 异常的处理方式(try-catch-finally)第7章:输入输出- 7.1 标准输入输出- 7.2 文件输入输出- 7.3 序列化第8章:Java集合框架- 8.1 集合的基本概念- 8.2 List接口及其实现- 8.3 Set接口及其实现- 8.4 Map接口及其实现第9章:泛型- 9.1 泛型的概念- 9.2 泛型的使用- 9.3 泛型的限制第10章:多线程- 10.1 线程的概念- 10.2 创建和启动线程- 10.3 线程的同步第11章:网络编程- 11.1 网络编程基础- 11.2 Socket编程- 11.3 URL和URLConnection第12章:图形用户界面- 12.1 AWT和Swing- 12.2 事件处理- 12.3 布局管理器第13章:Java数据库连接- 13.1 JDBC基础- 13.2 数据库连接和操作- 13.3 SQL语句的使用第14章:Java Web应用- 14.1 Servlet基础- 14.2 JSP技术- 14.3 MVC架构模式每个章节的课后答案通常包括理论问题和编程练习题的解答。

java语言程序设计第二版习题答案

java语言程序设计第二版习题答案

java语言程序设计第二版习题答案Java语言程序设计第二版习题答案Java语言程序设计是一门广泛应用于软件开发领域的编程语言。

无论是初学者还是有经验的开发人员,都可以通过学习Java语言来提升自己的编程能力。

为了帮助读者更好地掌握Java语言的知识,本文将提供《Java语言程序设计第二版》中一些习题的答案,并对其中一些重要的概念进行解释和讨论。

第一章:计算机、程序和Java1.1 问题:编写一个Java程序,输出“Hello, World!”。

答案:```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```1.2 问题:Java应用程序的执行过程是怎样的?答案:Java应用程序的执行过程可以分为三个阶段:编辑、编译和运行。

首先,我们使用文本编辑器编写Java源代码文件,文件的扩展名为.java。

然后,使用Java编译器将源代码文件编译成字节码文件,文件的扩展名为.class。

最后,使用Java虚拟机(JVM)加载字节码文件并执行程序。

第二章:基本程序设计2.1 问题:编写一个Java程序,计算两个整数的和。

答案:```javaimport java.util.Scanner;public class Sum {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.print("Enter the first number: ");int num1 = input.nextInt();System.out.print("Enter the second number: ");int num2 = input.nextInt();int sum = num1 + num2;System.out.println("The sum is " + sum);}}```2.2 问题:什么是变量?如何在Java中声明和使用变量?答案:变量是用于存储数据的内存位置。

Java程序设计案例教程(第二版)周怡、张英主编。第1章 习题答案

Java程序设计案例教程(第二版)周怡、张英主编。第1章 习题答案

习题1一、选择题1. 一个Java程序运行从上到下的环境次序是(C)A. 操作系统、Java程序、Java虚拟机、硬件B. Java虚拟机、Java程序、硬件、操作系统C. Java程序、Java虚拟机、操作系统、硬件D. Java程序、操作系统、Java虚拟机2. 以下关于JVM的说法,其中(C)是正确的。

A. JVM又称Java虚拟机,属于Java语言程序的编译工具,不支持Java程序的执行。

B. JVM与操作系统无关,但与计算机硬件有直接关系,不同的硬件需要不同的JVM。

C. Java字节码程序可以在任何安装有JVM的机器上无障碍地运行。

D. JVM的核心是JDK API,没有它,任何Java程序都不能正常运行。

3. 以下的计算机高级语言中,其中的(D)语言不支持面向对象对象程序设计。

A. C++B. Viaual BasicC. C#D. Truebo C4. 以下关于Java语言的说法,其中(D)是不正确的。

A. Java是完全面向对象的程序设计语言,其具有很强的安全性和跨平台能力。

B. Java语言所具有的很高的“移植性”,主要缘于其“Java虚拟机”的运行机制。

C. 在JDK下编译Java源程序的命令名为javac,运行Java程序的命令是java。

D. 由于Java源程序采用简单文本文件协议存储,所以其源程序文件的扩展名可以是.txt。

二、填空题1. SUN公司于1999.6在其推出的JDK1.3中,将Java划分为J2EE、J2SE和J2ME等三个平台对外发布。

2. Java程序编译后得到的字节码文件的扩展名(文件名后缀)为.class。

3. Java程序可以分为Application 和App let两种类型,其中后者主要用于WEB 浏览器中运行。

4. Java的应用可以分为桌面应用,Web及企业级应用,和嵌入式应用三类。

三、简答题1. Java程序设计语言有哪些优点和缺点?一,跨平台性,通过JVM的编译可以在任何的操作系统中运行java程序,而其它一般的语言如果换一个操作系统则无法运行,必须重新编译。

Java程序设计案例教程(第二版)周怡、张英主编。第8章习题答案

Java程序设计案例教程(第二版)周怡、张英主编。第8章习题答案

习题8一、选择题1.下面C 不是容器类。

A.JPanel B.JFrame C.Canvas D.JApplet解析:JPanel是—个无边框的中间层容器;JFrame(容器)扩展java.awt.Frame的外部窗体;java.awt包提供我们一个组件: Canvas画布(不是容器),它是一个可以在上面绘画的简单组件;Swing提供的顶层容器类之一:JApplet小应用程序。

2.JFrame默认的布局管理器是A 。

A.BorderLayout B.FlowLayout C.null D.GridLayout解析:对于JFrame和JWindow这样的顶层框架来说,默认的布局管理器是边界布局(BorderLayout)。

3.要使一组JRadioButton类对象具有单选性质,必须使用C 类。

A.JButton B.JButtonGroup C.ButtonGroup D.JPanel解析:JRadioButton组件实现一个单选按钮,用户可以很方便地查看单选按钮的状态。

JradioButton类可以单独使用,也可以与ButtonGroup类联合使用。

当单独使用时,该单选按钮可以被选定和取消选定;当与ButtonGroup类联合使用时,则组成了一个单选按钮组,此时用户只能选定其中的一个单选按钮,取消选定的操作由ButtonGroup类自动完成。

4.在其他方法中要调用paint方法,可以通过使用D 方法来实现。

A.构造B.super C.paint D.repaint解析:C不是其他方法;repaint() 方法一定会调用paint。

5.要在JFrame上添加菜单,首先应添加B 。

A.下拉式菜单B.菜单栏C.菜单项D.常规菜单解析:有了菜单栏,才有菜单项,很多菜单项才会有下拉式菜单。

6.ActionListener是C 监听器接口。

A.键盘事件B.鼠标事件C.动作事件D.调整事件解析:动作事件,例如用鼠标单击命令式按钮。

Java程序设计精编教程第2版习题解答

Java程序设计精编教程第2版习题解答

习题解答习题一(第1章)1.2.需3个步骤:1) 用文本编辑器编写源文件。

2) 使用编译源文件,得到字节码文件。

3) 使用解释器运行程序。

3. :\\\\;.;4. B5. 源文件的扩展名是,字节码的扩展名是。

6.D 。

习题二(第2章)1.2. { ( b) {;}( b) {;}}{() {("老师好");}}{( []) {();((12,236));((234,120));();();}}3.如果源文件中有多个类,但没有类,那么源文件的名字只要和某个类的名字相同,并且扩展名是就可以了,如果有一个类是类,那么源文件的名字必须与这个类的名字完全相同,扩展名是。

4.行尾风格。

习题三(第3章)1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。

标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。

不是标识符。

2.关键字就是语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。

不是关键字。

3.,,,,,,,。

4.属于操作题,解答略。

5.属于操作题,解答略。

6. E {( [ ]) {'A''Z';( <)(" ");}}7.不可以。

习题四(第4章)1.110。

不规范。

2.新亲亲斤!!。

3.{( ) {(913112) {("是三等奖");}(20959627) {("是二等奖");}(87531659) {("是一等奖");{("未中奖");}}}4.;{( []) {();= 0; 存放电量= 0; 用户需要交纳的电费("输入电量:");();( <= 90 >=1){= *0.6计算的值}( <= 150 >=91){= 90*0.6+(90)*1.1计算的值}(>150){= 90*0.6+(150-90)*1.1+(150)*1.7计算的值}{("输入电量:""不合理");}("电费5.2f");}}5. E {( [ ]) {'A''Z';( <)("%2c");();( <)("%2c",(32));}}6. 5 {( []) {0;(1<=1000) {(0);}()("完数:");}}}7E {( []) {111;0;() {1;(1<){*i;};(>9876);;}("满足条件的最大整数:"+(1));}}习题五(第5章)1.用类创建对象时。

Java语言程序设计(第2版)第1-6章 课后习题答案

Java语言程序设计(第2版)第1-6章 课后习题答案

第1章Java语言概述选择题1-1 在下列概念中,Java语言只保留了(B)A. 运算符重载B. 方法重载C. 指针D. 结构和联合1-2 下列关于Java语言特性的描述中,错误的是(D)A. 支持多线程操作B. Java程序与平台无关C. Java和程序可以直接访问Internet上的对象D. 支持单继承和多继承1-3 下列关于Java Application程序在结构上的特点的中,错误的是(C)A. Java程序是由一个或多个类组成的B. 组成Java程序的若干个类可以放在一个文件中,也可以放在多个文件中C. Java程序的文件名要与某个类名相同D. 组成Java程序的多个类中,有且仅有一个主类1-4 Java程序经过编译后生成的文件的后缀是(C)A. .objB. .exeC. .classD. .java1-5 下列关于运行字节码文件的命令行参数的描述中,正确的是(A)A. 第一个命令行参数(紧跟命令字的参数)被存放在args[0]中B. 第一个命令行参数被存放在args[1]中C. 命令行的命令字被存放在args[0]中D.数组args[]的大小与命令行参数的个数无关判断题1-1JavaC++的语言之前问世的。

(错)1-2Java语言具有较好的安全性和可移植性及与平台无关等特性。

(对)1-3Java语言中取消了联合的概念,保留了结构概念。

(错)1-4Java语言中数据类型占内在字节数与平台无关。

(对)1-5Java语言中可用下标和指针两种方式表示数组元素。

(错)1-6Java语言的源程序不是编译型的,而是编译解释型的。

(对)1-7操作系统中进程和线程两个概念是没有区别的。

(错)1-8Java语言既是面向对象的又是面向网络的高级语言。

(对)1-9Java程序分为两大类:一类是Application程序,另一类是Applet程序。

前者又称Java应用程序,后者又称为Java小应用程序。

(对)1-10Java Application程序是由多个文件组成的,其中可以有也可以没有主文件。

Java程序设计案例教程(第二版)周怡、张英主编。第10章 习题答案

Java程序设计案例教程(第二版)周怡、张英主编。第10章 习题答案

习题10一、判断题1.第一次加载Applet时,默认最先执行的方法是init()函数。

(T)2.调用getArrtibute()方法可以把HTML网页中的参数传递给Applet (F)3.一个Applet编译后的类名是Test.class,运行此小程序的命令是Java Test (F)4.Applet类的直接父类是Frame类。

(F)5.Applet程序的执行不需要任何环境。

(F)6.网页中嵌入的Applet程序需要下载到本地才能执行。

(T)二、选择题1. 下面说法正确的是(D)A.Applet类需要从Java的一个包中载入B.Applet不能由main方法C.Applet不是ng.Object的子类D.Applet是Java语言的关键字2. 以下关于Applet的说法,错误的是( B )。

A. 需继承Applet类B. 不能独立运行C.能嵌入HTMLD.需要有main()方法3.以下( C )不是Applet类的方法。

A. init()B. paint()C.start()D.stop()4.以下( D )不是Applet能支持播放的音频格式。

A. aiffB. waveC.MP3D. midf5.以下说法错误的是( D )。

A. HTML由若干标记组成,所有标记用一对尖括号<>括起B. HTML可以通过<param>标记向Applet传递参数C.Applet可以通过getParameter()方法来接收参数D. HTML中,<param>标记在<applet>标记之前6. 以下说法错误的是(ACD)。

A.嵌入到HTML文件中的是Applet源程序B. Applet提供的play()方法可加载声音文件直接播放C. HTML文件中有不成对出现的标记D. HTML不区分大小写7.关于Applet的说法正确的是(B)A. Applet也需要main方法B. Applet必须继承自java.awt.AppletC. Applet能访问本地文件D. Applet程序不需要编译三、填空题1.Applet小应用程序是通过浏览器中的Java解释器来解释执行的。

java程序设计(第二版)课后习题答案

java程序设计(第二版)课后习题答案

//习题2.2import java.util.*;class MyDate{private int year;private int month;private int day;public MyDate(int y,int m,int d){//构造函数,构造方法year=y;month=m;day=d;}//end public MyDate(int y,int m,int d)public int getYear(){//返回年return year;}//end getYear()public int getMonth(){//返回月return month;}//end getMonth()public int getDay(){//返回日return day;}//end getDay()}//end class MyDateclass Employee{private String name;private double salary;private MyDate hireDay;public Employee(String n,double s,MyDate d){name=n;salary=s;hireDay=d;}//end public Employee(String n,double s,MyDate d)public void print(){System.out.println("名字:"+name+"\n工资:"+salary+"\n雇佣年份:"+hireYear()+"\n");}//end print()public void raiseSalary(double byPercent){salary*=1+byPercent/100;}//endpublic int hireYear(){return hireDay.getYear();}}//end class Employeepublic class MyTestClass {public static void main(String[] args) {Employee[]staff=new Employee[3];staff[0]=new Employee("Harry Hacker",35000,new MyDate(1989,10,1));- 2 - staff[1]=new Employee("Carl Carcker",75000,new MyDate(1987,12,15)); staff[2]=new Employee("Tony T ester",38000,new MyDate(1990,3,12)); int integerValue;System.out.println("The information of employee are:");for(integerValue=0;integerValue<=2;integerValue++){staff[integerValue].raiseSalary(5);}//end for()for(integerValue=0;integerValue<=2;integerValue++){staff[integerValue].print();}//end for()}//end main() }//end class MyTestClass//习题2.4import java.util.*;public class DataType {public static void main(String[] args) {boolean flag;char yesChar;byte finByte;int intValue;long longValue;short shortValue;float floatValue;double doubleValue;flag=true;yesChar='y';finByte=30;intValue=-7000;longValue=200l;shortValue=20000;floatValue=9.997E-5f;doubleValue=floatValue*floatValue;System.out.println("the values are:");System.out.println("布尔类型变量flag="+flag);System.out.println("字符型变量yesChar="+yesChar);System.out.println("字节型变量finByte="+finByte);System.out.println("整型变量intValue="+intValue);System.out.println("长整型变量longValue="+longValue);System.out.println("短整型变量shortValue="+shortValue);System.out.println("浮点型变量floatValue="+floatValue);System.out.println("双精度浮点型变量doubleValue="+doubleValue);}//end main()}//习题2.9import java.util.*;class PubTest1{private int ivar1;private float fvar1,fvar2;public PubTest1(){fvar2=0.0f;}public float sum_f_I(){fvar2=fvar1+ivar1;return fvar2;}public void print(){System.out.println("fvar2="+fvar2);}public void setIvar1(int ivalue){ivar1=ivalue;}public void setFvar1(float ivalue){fvar1=ivalue;}}public class PubMainTest {public static void main(String[] args) {PubTest1 pubt1=new PubTest1();pubt1.setIvar1(10);pubt1.setFvar1(100.02f);pubt1.sum_f_I();pubt1.print();}}//习题2.10import java.util.*;class Date {private int year;private int month;private int day;public Date(int day, int month, int year) { //构造函数,构造方法this.year = year;this.month = month;this.day = day;} //end public MyDate(int y,int m,int d)- 4 -public int getYear() { //返回年return year;} //end getYear()public int getMonth() { //返回月return month;} //end getMonth()public int getDay() { //返回日return day;} //end getDay()} //end class Datepublic class Teacher {String name;//教师名字boolean sex;//性别,true 表示男性Date birth;//出生日期String salaryID;//工资号String depart;//教师所在系所String posit;//教师职称String getName() {return name;}void setName(String name) { = name;}boolean getSex() {return sex;}void setSex(boolean sex) {this.sex = sex;}Date getBirth() {return birth;}void setBirth(Date birth) {this.birth = birth;}String getSalaryID() {return salaryID;}void setSalaryID(String salaryID) {this.salaryID = salaryID;}String getDepart() {return depart;}void setDepart(String depart) {this.depart = depart;}String getPosit() {return posit;}void setPosit(String posit) {this.posit = posit;}public Teacher(){System.out.println("父类无参数的构造方法!!!!!!!");}//如果这里不加上这个无参数的构造方法将会出错!!!!public Teacher(String name,boolean sex,Date birth,String salaryid,String depart,String posit){ =name;this.sex=sex;this.birth=birth;this.salaryID=salaryid;this.depart=depart;this.posit=posit;}//end Teacher()public void print(){System.out.print("the teacher'name:");System.out.println(this.getName());System.out.print("the teacher'sex:");if(this.getSex()==false){System.out.println("女");}else{System.out.println("男");}System.out.print("the teacher'birth:");System.out.println(this.getBirth().getYear()+"-"+this.getBirth().getMonth()+"-"+this.getBirth().getDay()); System.out.print("the teacher'salaryid:");System.out.println(this.getSalaryID());System.out.print("the teacher'posit:");System.out.println(this.getPosit());System.out.print("the teacher'depart:");System.out.println(this.getDepart());}//end print()public static void main(String[] args) {Date dt1=new Date(11,23,1989);Date dt2=new Date(2,6,1975);- 6 -Date dt3=new Date(11,8,1964);Date dt4=new Date(10,4,1975);Date dt5=new Date(8,9,1969);//创建各系教师实例,用来测试Teacher t1=new Teacher("王莹",false,dt1,"123","经济学","prefessor");ResearchTeacher rt=new ResearchTeacher("杨zi 青",true,dt2,"421","软件工程", "associate prefessor","software"); LabTeacher lat=new LabTeacher("王夏瑾",false,dt3,"163","外语","pinstrucor","speech lab");LibTeacher lit=new LibTeacher("马二孩",true,dt4,"521","大学物理","prefessor","physicalLib");AdminTeacher at=new AdminTeacher("王xi",false,dt5,"663","环境","prefessor","dean");/////////分别调用各自的输出方法,输出相应信息//////////////////////////// System.out.println("-------------------------------");t1.print();//普通教师信息System.out.println("-------------------------------");rt.print();//研究系列教师信息System.out.println("-------------------------------");lat.print();//普通教师信息System.out.println("-------------------------------");lit.print();//实验系列教师信息System.out.println("-------------------------------");at.print();//行政系列教师信息System.out.println("-------------------------------");}//end main()}//end public class Teacherclass ResearchT eacher extends Teacher{private String resField;public ResearchT eacher(String name, boolean sex, Date birth, String salaryid, String depart, String posit, String resField) { = name;this.sex = sex;this.birth = birth;this.salaryID = salaryid;this.depart = depart;this.posit = posit;this.resField = resField;} //end public ResearchTeacher(){}String getResField(){return resField;}void setResField(String resField){this.resField=resField;}public void print() {System.out.print("research teacher info is:");System.out.print("the teacher'name:");System.out.println(this.getName());System.out.print("the teacher'sex:");if (this.getSex() == false) {System.out.println("女");}else {System.out.println("男");}System.out.print("the teacher'birth:");System.out.println(this.getBirth().getYear() + "-" +this.getBirth().getMonth() + "-" +this.getBirth().getDay());System.out.print("the teacher'salaryid:");System.out.println(this.getSalaryID());System.out.print("the teacher'posit:");System.out.println(this.getPosit());System.out.print("the teacher'depart:");System.out.println(this.getDepart());System.out.print("the teacher'resField:");System.out.println(this.getResField());} //end print()}//end class ResearchTeacherclass LabTeacher extends T eacher{private String labName;public LabTeacher(String name, boolean sex, Date birth,String salaryid, String depart,String posit, String labName) { = name;this.sex = sex;this.birth = birth;this.salaryID = salaryid;this.depart = depart;this.posit = posit;bName = labName;} //end public ResearchTeacher(){}String getLabName(){return labName;}void setLabName(String labName){- 8 -bName=labName;}public void print() {System.out.print("lab teacher info is:");System.out.print("the teacher'name:");System.out.println(this.getName());System.out.print("the teacher'sex:");if (this.getSex() == false) {System.out.println("女");}else {System.out.println("男");}System.out.print("the teacher'birth:");System.out.println(this.getBirth().getYear() + "-" +this.getBirth().getMonth() + "-" +this.getBirth().getDay());System.out.print("the teacher'salaryid:");System.out.println(this.getSalaryID());System.out.print("the teacher'posit:");System.out.println(this.getPosit());System.out.print("the teacher'depart:");System.out.println(this.getDepart());System.out.print("the teacher'labName:");System.out.println(bName);} //end print()}//end class LabTeacherclass LibTeacher extends Teacher{private String libName;public LibTeacher(String name,boolean sex,Date birth,String salaryid,String depart,String posit,String libName){ = name;this.sex = sex;this.birth = birth;this.salaryID = salaryid;this.depart = depart;this.posit = posit;this.libName=libName;}//end public ResearchT eacher(){}String getLibName(){return libName;}void setLibName(String libName){this.libName=libName;}public void print() {System.out.print("lib teacher info is:");System.out.print("the teacher'name:");System.out.println(this.getName());System.out.print("the teacher'sex:");if (this.getSex() == false) {System.out.println("女");}else {System.out.println("男");}System.out.print("the teacher'birth:");System.out.println(this.getBirth().getYear() + "-" +this.getBirth().getMonth() + "-" +this.getBirth().getDay());System.out.print("the teacher'salaryid:");System.out.println(this.getSalaryID());System.out.print("the teacher'posit:");System.out.println(this.getPosit());System.out.print("the teacher'depart:");System.out.println(this.getDepart());System.out.print("the teacher'libName:");System.out.println(this.libName);} //end print()}//end class LibTeacherclass AdminTeacher extends Teacher{private String managePos;public AdminTeacher(String name,boolean sex,Date birth,String salaryid,String depart,String posit,String managePos){ = name;this.sex = sex;this.birth = birth;this.salaryID = salaryid;this.depart = depart;this.posit = posit;this.managePos=managePos;- 10 -}//end public ResearchT eacher(){}String getManagePos(){return managePos;}void setManagePos(String managePos){this.managePos=managePos;}public void print() {System.out.print("adminteacher info is:");System.out.print("the teacher'name:");System.out.println(this.getName());System.out.print("the teacher'sex:");if (this.getSex() == false) {System.out.println("女");}else {System.out.println("男");}System.out.print("the teacher'birth:");System.out.println(this.getBirth().getYear() + "-" +this.getBirth().getMonth() + "-" +this.getBirth().getDay());System.out.print("the teacher'salaryid:");System.out.println(this.getSalaryID());System.out.print("the teacher'posit:");System.out.println(this.getPosit());System.out.print("the teacher'depart:");System.out.println(this.getDepart());System.out.print("the teacher'managePos:");System.out.println(this.managePos);} //end print() }//end class AdminTeacher习题2.11public class Course {private String courseID;private String courseName;private String courseType;private int classHour;private float credit;public Course(String courseID, String courseName, String courseType, int classHour, float credit) {this.courseID=courseID;this.courseName=courseName; this.courseType=courseType; this.classHour=classHour; this.credit=credit;}//end public Course(){}String getID() {return courseID;}void setID(String id) {this.courseID = id;}String getName() {return courseName;}void setName(String name) { this.courseName = name;}String getType() {return courseType;}void setType(String type) { this.courseType = type;}int getClassHour() {return classHour;}void setClassHour(int hour) { this.classHour = hour;}float getCredit() {return classHour;}void setCredit(float credit) { this.credit= credit;}- 12 -public void print(){System.out.println("the basic info of this course as followed:"); System.out.println("courseID="+this.getID());System.out.println("courseName="+this.getName());System.out.println("courseType="+this.getType());System.out.println("classHour="+this.getClassHour());System.out.println("credit="+this.getCredit());}public static void main(String[] args) {Course cs=new Course("d12","java 程序设计(第二版)","cs",64,3.0f); System.out.println("----------------------------------");cs.print();System.out.println("修改课程学分为4.0f");cs.setCredit(4);cs.print();} }//习题2.12public class MyGraphic {String lineColor;String fillColor;MyGraphic(String lc,String fc){this.lineColor=lc;this.fillColor=fc;}void print(){System.out.println("line color is "+this.lineColor+"\t fill color is "+this.fillColor);}public static void main(String[] args) {float rd=(float)4.5;MyCircle mc=new MyCircle(rd,"black","white");MyRectangle mr=new MyRectangle(4,6,"red","blue");System.out.println("Circle info ");mc.print();System.out.println("circumference is " + mc.calCircum());System.out.println("square is " + mc.calSquare());System.out.println("rectangle info: ");mr.print();System.out.println("circumference is " + mr.calCircum());System.out.println("square is " + mr.calSquare()); }//end main(){}}//end public class MyGraphicclass MyRectangle extends MyGraphic{float rLong;float rWidth;MyRectangle (float rl,float rw,String lc,String fc){super(lc,fc);this.rLong=rl;this.rWidth=rw;}//end MyRectangle (){}float calCircum(){return ((float)((this.rLong+this.rWidth)*2));}float calSquare(){return ((float)(this.rLong*this.rWidth));}}//end class MyRectangleclass MyCircle extends MyGraphic{float radius;MyCircle (float rd,String lc,String fc){super(lc,fc);this.radius=rd;}//end MyRectangle (){}float calCircum(){return (float)((this.radius*3.12*2));}float calSquare(){return ((float)(this.radius*this.radius*3.14));}}//end class MyCircle//习题2.13public class Vehicle {String brand;String color;int price;int number;- 14 -public Vehicle(String b, String c) {this.brand = b;this.color = c;}public Vehicle(String b, String c, int p, int n) {this(b, c);this.price = p;this.number = n;}void print() {System.out.println("\n-------------------------");System.out.println("the vehicle info as followed :");System.out.println("brand=" + this.brand + "\t");System.out.println("color=" + this.color + "\t");System.out.println("price=" + this.price + "\t");System.out.println("number=" + this.number + "\t");} //end void print()public static void main(String[] args) {Vehicle c1=new Vehicle("vehicle1","white");Vehicle c2=new Vehicle("vehicle2","white",300,1);Car cr=new Car("car1","red",300,4,400);Truck tk2=new Truck("truck1","black",300,400);c1.print();c2.print();cr.print();tk2.print();} //end main()} //end public class Vehicleclass Car extends Vehicle{int speed;Car(String b, String c, int p, int n,int s){super(b,c,p,n);this.speed=s;}void print(){super.print();System.out.print("speed="+this.speed);}}//end class Carclass Truck extends Vehicle{int weight;Truck(String b, String c, int s,int w){super(b,c);this.speed=s;this.weight=w;}void print(){super.print();System.out.print("speed="+this.speed);System.out.print("weight="+this.weight); }}//end class Truck//习题3.3public class Test {public static void main(String[] args) {int b1=1;int b2=1;System.out.println("b1=" + b1);System.out.println("b2=" + b2);b1<<=31;b2<<=31;System.out.println("b1=" + b1);System.out.println("b2=" + b2);b1 >>= 31;System.out.println("b1=" + b1);b1 >>= 1;System.out.println("b1=" + b1);b2 >>>= 31;System.out.println("b2=" + b2);b2 >>>= 1;System.out.println("b2=" + b2);}}//习题3.4public class Factorial {private int result,initVal;public static int Factorial(int n){if(n==0){- 16 -}return n*Factorial(n-1);}public void print(){System.out.println(initVal+"!="+result);}public void setInitVal(int n){initVal=n;}public static void main(String[] args) {Factorial ff=new Factorial();for(int i=0;i<=4;i++){ff.setInitVal(2*(i+1));ff.result=Factorial(ff.initVal);ff.print();}//end for()}//end main()}//end public class Factorialpublic class Factorial2 {private int result,initVal;public void print(){System.out.println(initVal+"!="+result);}public void setInitVal(int n){initVal=n;}public static void main(String[] args) {Factorial2 ff=new Factorial2();for(int i=0;i<=4;i++){ff.setInitVal(2*(i+1));ff.result=1;for(int j=2;j<=ff.initVal;j++){ff.result*=j;}ff.print();}//end for()}//end main() }//习题3.5public class MathRandomTest {public static void main(String[] args) {int count=0,MAXof100,MINof100;int num,i;MAXof100=(int)(100*Math.random());MINof100=(int)(100*Math.random());System.out.print(MAXof100+" ");System.out.print(MINof100+" ");if(MAXof100>50)count++;if(MINof100>50)count++;if( MAXof100<MINof100){num=MINof100;MINof100=MAXof100;MAXof100=num;}//end if()for(i=0;i<98;i++){num=(int)(100*Math.random());System.out.print(num+((i+2)%10==9?"\n":" "));if(num>MAXof100){MAXof100=num;}else if(num<MINof100){MINof100=num;}if(num>50){count++;}}//end for()System.out.println("the max of 100 random integers is "+MAXof100);System.out.println("the min of 100 random integers is "+MINof100);System.out.println("the number of random more than50 is "+count); }//end main()}//end public class MathRandomTest//习题3.7public class PrintAst {public void printAstar() {System.out.print("*");}public void printSpace() {System.out.print(" ");}- 18 -public static void main(String[] args) {PrintAst pa = new PrintAst();int initNum = 13;for (int i = 1; i <= initNum / 2 + 1; i++) {for (int n = 1; n <= i; n++) {pa.printSpace();pa.printSpace();}for (int m = 1; m <= initNum - 2 * i + 2; m++) {pa.printSpace();pa.printAstar();}System.out.println();} //end forif (initNum % 2 == 0) {for (int i = 1; i <= initNum / 2; i++) {pa.printSpace();pa.printSpace();}pa.printSpace();pa.printAstar();pa.printSpace();pa.printAstar();System.out.println();}for (int i = initNum / 2 + 2; i <= initNum; i++) {for (int n = 1; n <= initNum - i + 1; n++) {pa.printSpace();pa.printSpace();}for (int m = 1; m <= 2 * i - initNum; m++) {pa.printSpace();pa.printAstar();}System.out.println();} //end forSystem.out.println();} //end main()} //end public class PrintAst//习题3.8public class PrintTriag {public void printAstar() {System.out.print("*");}public static void main(String[] args) {int initLine = 10;int initNum = 10;PrintTriag pt = new PrintTriag();for (int i = 0; i < initLine; i++) {for (int j = 0; j < initNum - i; j++) {pt.printAstar();}System.out.println();}}//end main()}//end public class PrintTriag习题3.9import java.util.*;public class MultipleT able {public void printFormula(int i,int j,int res){ System.out.print(i+"*"+j+"="+res+" "); }public static void main(String[] args) {MultipleT able mt=new MultipleT able();int initNum=9;int res=0;for(int i=1;i<=initNum;i++){for(int j=1;j<=i;j++){res=i*j;mt.printFormula(i,j,res);}System.out.println();}//end for}//end main()- 20 - }//end public class MultipleT able习题3,10import java.io.*;public class HuiWen {boolean isHuiWen(char str[], int n) {int net = 0;int i, j;for (i = 0, j = n - 1; i < n / 2; i++, j--) {if (str[i] == str[j]) {net++;} //end if} //end forif (net == (int) (n / 2)) {return true;} //end ifelse {return false;}} //end boolean isHuiWen(char str[], int n)public static void main(String[] args) {HuiWen hw1 = new HuiWen();String pm = "";try {InputStreamReader reader = new InputStreamReader(System.in); BufferedReader input = new BufferedReader(reader);System.out.print("give your test string:\n");pm = input.readLine();System.out.println(pm);} //end trycatch (IOException e) {System.out.print(e);} //end catchboolean bw = hw1.isHuiWen(pm.toCharArray(), pm.length()); if (bw == true) {System.out.println("是回文");}else {System.out.println("不是回文");}} //end main()} //end public class HuiWenimport java.io.*;public class HuiWen2 {String reverse(String w1){String w2;char[]str1=w1.toCharArray();int len=w1.length();char[]str2=new char[len];for(int i=0;i<len;i++){str2[i]=str1[len-1-i];}w2=new String(str2);return w2;}public static void main(String[] args) {HuiWen2 hw1 = new HuiWen2();String pm = "";try {InputStreamReader reader = new InputStreamReader(System.in);BufferedReader input = new BufferedReader(reader);System.out.print("give your test string:\n");pm = input.readLine();} //end trycatch (IOException e) {System.out.print(e);} //end catchString w2=hw1.reverse(pm);if(pareTo(pm)==0){System.out.println("是回文");}else {System.out.println("不是回文");}}}//习题3.11import java.io.*;public class PrimeNumber {- 22 -private int pm;public void setPm(int pm){this.pm=pm;}public boolean isPrime(){boolean bl=true;int i=2;for(i=2;i<=Math.sqrt(pm);){if(pm%i==0){bl=false;break;}else{i++;}}//end forreturn bl;}//end public boolean isPrime()public static void main(String[] args) {PrimeNumber prim=new PrimeNumber();int testNum=0;try{InputStreamReader reader = new InputStreamReader(System.in);BufferedReader input = new BufferedReader(reader);System.out.print("give your test number:\n");testNum=Integer.parseInt(input.readLine());}//end trycatch(IOException e){System.out.println(e);}//end catchprim.setPm(testNum);boolean bl=prim.isPrime();if(bl==true){System.out.println(testNum+"是质数");}else {System.out.println(testNum+"不是质数");}}//end main }//end public class PrimeNumber习题3.12import java.io.*;public class Tempconverter {double celsius(double y){return ((y-32)/9*5);}public static void main(String[] args) {Tempconverter tc=new Tempconverter ();double tmp=0;try{InputStreamReader reader = new InputStreamReader(System.in);BufferedReader input = new BufferedReader(reader);System.out.print("give your fahrenheit number:\n");tmp=Double.parseDouble(input.readLine());}//end trycatch(NumberFormatException e){System.out.println(e);}//end catchcatch(IOException e){System.out.println(e);}//end catchSystem.out.println("the celsius of temperature is "+tc.celsius(tmp));}//end main()}//end public class Tempconverter习题3.13import java.io.*;public class Trigsquare {double x, y, z;Trigsquare(double x, double y, double z) {this.x = x;this.y = y;this.z = z;}boolean isTriangle() {boolean bl = false;if (this.x > 0 && this.y > 0 && this.z > 0) {if ( (this.x + this.y) > this.z && (this.x + this.z) > this.y && (this.z + this.y) > this.x) {bl = true;} //ebd ifelse {bl = false;} //end else} //end if(this.x>0&&this.y>0&&this.z>0)return bl;} //end boolean isTriangle()double getArea() {double s = (this.x + this.y + this.z) / 2.0;return (Math.sqrt(s * (s - this.x) * (s - this.y) * (s - this.z)));} //end double getArea()public static void main(String[] args) {double s[] = new double[3];try {InputStreamReader reader = new InputStreamReader(System.in);BufferedReader input = new BufferedReader(reader);System.out.print("输入三角形的三边的长度:\n");for (int i = 0; i <= 2; i++) { //输入三个数s[i] = Double.parseDouble(input.readLine());} //end for} //end trycatch (NumberFormatException e) {System.out.println("format error!!!");} //end catch- 24 - catch (IOException e) {System.out.print(e);} //end catchTrigsquare ts = new Trigsquare(s[0], s[1], s[2]);if (ts.isTriangle() == true) {System.out.println("三角形的面积是" + ts.getArea());} //end ifelse {System.out.println("输入的三边不能组成三角形!!");} //end else} //end main()} //end public class Trigsquare//习题3.14import java.util.*;import java.io.*;import java.util.Date;import java.text.*;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.GregorianCalendar.*;。

Java程序设计教程与实训(第2版)习题参考答案(1-9章)

Java程序设计教程与实训(第2版)习题参考答案(1-9章)

各章参考答案(1-9章)第一章【习题内容】1. Java语言有哪些特点?2.简述Java的运行机制。

3.简述Java应用程序的开发过程。

4.在计算机上安装、配置Java运行环境,并编辑运行本章中的例程。

【参考答案】1.面向对象、语法简单、平台无关性、安全性、分布式应用、多线程2. Java程序的运行必须经过编写、编译、运行三个步骤。

编写是指在Java开发环境中进行程序代码的输入,最终形成后缀名为.java的Java源文件。

编译是指使用Java编译器对源文件进行错误排查的过程,编译后将生成后缀名为.class的字节码文件,字节码文件是一种和任何具体机器环境及操作系统环境无关的中间代码,它是一种二进制文件,Java解释器负责将字节码文件翻译成具体硬件环境和操作系统平台下的机器代码,以便执行。

运行是指使用Java解释器将字节码文件翻译成机器代码,执行并显示结果。

Java虚拟机(JVM)是运行Java程序的软件环境,Java解释器就是Java虚拟机的一部分。

在运行Java 程序时,首先会启动JVM,然后由它来负责解释执行Java的字节码,JVM把不同软硬件平台的具体差别隐藏起来,从而实现了真正的二进制代码级的跨平台移植。

3.(1)安装JDK(2)配置环境变量(3)使用记事本编写java源文件(4)使用javac 编译java源文件(5)使用java运行java程序。

4.略。

第二章【习题内容】1. 现有语句:String s = "Example"; 则下面哪些语句是合法语句?A. s >>> = 3;B. s[3] = "x";C. int i = s.length();D. String t = "For " + s;E. s = s + 10;2.下面哪些是Java保留字?A. runB. defaultC. implementD. import3.下面声明float变量的语句合法的有:A. float foo = -1;B. float foo = 1.0;C. float foo = 42e1;D. float foo = 2.02f;E. float foo = 3.03d;F. float foo = 0x0123;4.以下哪两个表达式是等价的:A. 3/2B. 3<2C. 3*4D. 3<<2E. 3*2^2F. 3<<<25.分析下列程序的执行结果:(1)public class TestA{public static void main(String args[]){int i = oxFFFFFFF1;int j = ~i;System.out.println("j=" + j);}}(2)public class TestB{public static void main(String[] args){System.out.println(6 ^ 3);}}(3)public class FooBar{public static void main(String[] args){int i = 0, j = 5;tp:for(; ; i++){for( ; ; --j)if(i > j)break tp;}System.out.println("i=" + i + ",j=" + j);}}(4)public class TestC{public static void main(String[] args){int i = 1, j = 10;do{if(i++ > --j)continue;}while(i < 5);System.out.println("i=" + i + " j=" + j);}}【参考答案】1. C、D、E2.B、D3.A、D、F4.C、D5.(1)j=14(2)5(3)i=0,j=-1(4)i=5 j=6第三章【习题内容】1.什么叫引用类型,对象是引用类型吗?2.Java的访问限定修饰符有几种,各自的访问权限是什么?3.什么是类成员,什么是实例成员?它们之间有什么区别?4.如何创建自己的包,如何引入包?5.下面哪一个是类Myclass的构造方法?class Myclass{public void Myclass(){}public static Myclass(){}public Myclass(){}public static void Myclass(){}}6.设计一个动物类,它包含动物的基本属性,例如名称、身长、重量等,并设计相应的动作,例如跑、跳、走等。

Java程序设计案例教程 习题答案 第1章 java编程语言入门

Java程序设计案例教程  习题答案  第1章 java编程语言入门

第1章Java开发入门
一.填空题
1.面向对象,SUN
2. JavaSE, JavaEE, JavaME
3.面向对象、跨平台性、支持多线程
4. JDK
5.bin目录二.选择
l.C 2.ABCD 3.D 4.D 5.B三.简答
1.path环境变量是系统环境变量中的一种,它用于保存一系列可执行文件的路径,每个路径之间以分号分隔。

当在命令行窗口运行一个可执行文件时,操作系统首先会在当前目录下查找是否存在该文件,如果不存在会继续在path环境变量中定义的路径下去寻找这个文件,如果仍未找到,系统会报错。

2.Java程序运行时,必须经过编译和运行两个步骤。

首先将后缀名为Java的源文件进行编译,生成后缀名为.class的字节码文件,然后Java虚拟机将字节码文件进行解释执行,并将结果显示出来。

四.编程HelloWorld.java。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

习题1
一、选择题
1.一个Java程序运行从上到下的环境次序是(C)
A.操作系统、Java程序、Java虚拟机、硬件
B.Java虚拟机、Java程序、硬件、操作系统
C.Java程序、Java虚拟机、操作系统、硬件
D.Java程序、操作系统、Java虚拟机
2.以下关于JVM的说法,其中(C)是正确的。

A.JVM又称Java虚拟机,属于Java语言程序的编译工具,不支持Java程序的执行。

B.JVM与操作系统无关,但与计算机硬件有直接关系,不同的硬件需要不同的JVM。

C.Java字节码程序可以在任何安装有JVM的机器上无障碍地运行。

D.JVM的核心是JDK API,没有它,任何Java程序都不能正常运行。

3.以下的计算机高级语言中,其中的(D)语言不支持面向对象对象程序设计。

A.C++
B.Viaual Basic
C.C#
D.Truebo C
4.以下关于Java语言的说法,其中(D)是不正确的。

A.Java是完全面向对象的程序设计语言,其具有很强的安全性和跨平台能力。

B.Java语言所具有的很高的“移植性”,主要缘于其“Java虚拟机”的运行机制。

C.在JDK下编译Java源程序的命令名为javac,运行Java程序的命令是java。

D.由于Java源程序采用简单文本文件协议存储,所以其源程序文件的扩展名可以是.txt。

二、填空题
1.SUN公司于1999.6在其推出的JDK1.3中,将Java划分为J2EE、J2SE和J2ME等三个平台对外发布。

2.Java程序编译后得到的字节码文件的扩展名(文件名后缀)为.class。

3.Java程序可以分为Application和App let两种类型,其中后者主要用于WEB 浏览器中运行。

4.Java的应用可以分为桌面应用,Web及企业级应用,和嵌入式应用三类。

三、简答题
1.Java程序设计语言有哪些优点和缺点?
一,跨平台性,通过JVM的编译可以在任何的操作系统中运行java程序,而其它一般的语言如果换一个操作系统则无法运行,必须重新编译。

二,面向对象性,这个特点可以使我们不必去关心一个类里的东西和方法是怎样实现的,只需把我们要做的所有操作和一些成员变量封装在一个类里面,而不用去管具体的实现过程。

三,开源,开源社区开发了很多开源框架可供使用,简化了大型系统开发。

不足:虚拟机解释执行和垃圾回收机制等,所以速度比较慢,不适合性能要求苛刻的大型系统。

2.什么是Java虚拟机?
虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。

Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。

JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。

3.简述什么是类和对象以及这两者间的联系。

类定义的是一个事物的抽象特征。

通常,类定义了事物的属性和行为(方法)。

对象则是类的实例。

类定义了这些实例的一个模板,根据这个模板我们可以在程序中制造出很多具体的事例,而不需要重复编写这些代码,只需要给这些实例赋予它们相应的特征数值,然后根据类模板产生不同的实例。

4.简述Java的三种应用。

Java由于具有跨平台,面向对象和语言较简单等优点,加之Java虚拟机和编译器的质量的提高,使用Java编写的很多桌面应用程序得到了广泛的使用。

这些应用包括我们经常使用的Java开发工具JEdit,Java集成开发环境Eclipse和NetBeans
Java Web应用需要以Web应用服务器(Tomcat,Jboss,WebLogic)为容器运行,是Java 最主要的应用领域,很多的大型商业系统和网站都是使用Java Web编写。

这些系统包括:淘宝网、支付宝、搜狐、新浪、网易、网易邮箱等等。

此外,数据密集型分布式应用Hadoop 也是使用Java编写。

嵌入式应用,特别是手机和平板电脑应用将是Java占主导地位的另一个应用领域(在移动应用兴起之前Java的主要应用领域还是Web应用)。

Java嵌入式开发或者手机软件开发与桌面应用开发类似,只需要安装上JDK和下载免费的J2ME Wireless Toolkit(J2ME无线开发工具集)就可以编写、编译和测试嵌入式应用程序。

相关文档
最新文档