Java核心技术习题答案
JAVA核心技术:卷1+卷2(原书第8版)

不同类型油藏储量失控原因各有差异 ,其中整装油藏 以油水井报废为主 ,断块油藏主要是 由于油水井损坏 ,低 渗 透油 藏主 要是 技术 经济 原 因导致 井 距过大 。
JAVA核心技术 :卷 1+卷 2 (原书第8版 )
作 者 :[美】昊斯特 曼 著 出 版 社 :机械 工 业 出版社
I S B N : 1 1250276
所 属 分 类 : 图 书 > 套 装 书 > 科 学技 术 图 书 > 计 算机 与互联 网 > 编程 语 言 与程 序 设 计
JAVA核心技术 I卷1):基础 知识 {原 书第8版) 是 JaVa核心技术》 的最新版 , 《Java核心技术 出版 以来一直 畅销不衰 ,深受读者青睐 ,每个新版本都尽可能快地跟上J a v a 开发工 具箱发展 的步伐 ,而且每 一版都重 新改 写了的部 分 内 容 ,以便适应Java的最新特性。本版也不例外 它反遇 了Java SE6的新特性。全书共14章 ,包括Java基本的程序结构、对 象与 类、继承、接口与内部类 、图形程序设计、事件 处理 、SWing 用户界 面组件、部署应 用程序和APP l et、异常 日志断言和调 试、叙述方式深入浅 出,并包含大量示例 从而 帮助读者充分 理解Java语言 以及Java类型库 的相关特性。
《JAVA核心技术卷2:高级特征》 适合软件开发人 员、高 等院校教师和学生参考 。
— 60一
工程 科 技
中圉科技信恩201 4年蕈 期t CHINA SCIENCE AND TECHNOLOGY INFORMATION Jan·2014
在 整装 、断块 油 藏 ,采收 率高 、采 出程 度高 、含水 高 。
2.3井况损坏严重 ,注采井网极不完善
JAVA各章习题及答案

三、编程题 1.编写一个 Java Application 类型的程序,输出“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 static 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 文件) ,源文件中包含一个公共类,其中包含两个方法,即 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); } } 【运行结果】
java各章习题答案

java各章习题答案Java各章习题答案在学习Java编程语言的过程中,习题是非常重要的一部分。
通过习题,我们可以巩固所学的知识,加深对语言特性和用法的理解。
在每一章的学习结束后,我们都会遇到一系列的习题,这些习题涵盖了本章的知识点,帮助我们检验自己的掌握程度。
下面我们来看一下Java各章习题的答案。
第一章:Java基础知识1.1 什么是Java编程语言?Java是一种面向对象的编程语言,由Sun Microsystems公司于1995年推出。
它具有跨平台性和安全性等特点。
1.2 Java程序的基本结构是什么?Java程序的基本结构包括包名、导入语句、类声明、主方法和其他方法。
1.3 Java中的数据类型有哪些?Java中的数据类型包括基本数据类型和引用数据类型。
基本数据类型包括整型、浮点型、字符型和布尔型。
1.4 Java中的控制语句有哪些?Java中的控制语句包括if语句、switch语句、while循环、for循环等。
第二章:面向对象编程2.1 什么是面向对象编程?面向对象编程是一种程序设计范式,它将数据和方法封装在对象中,通过对象之间的交互来实现程序的功能。
2.2 Java中的类和对象有什么区别?类是一种抽象的概念,它用来描述对象的属性和行为;对象是类的实例,它具体描述了类的属性和行为。
2.3 Java中的继承和多态是什么?继承是一种类与类之间的关系,它允许一个类继承另一个类的属性和方法;多态是一种对象的多种形态,它允许同一个方法在不同的对象上具有不同的行为。
2.4 Java中的封装和抽象是什么?封装是一种将数据和方法封装在对象中的机制,它可以保护数据的安全性;抽象是一种将对象的共性特征提取出来的机制,它可以提高代码的复用性。
第三章:异常处理3.1 什么是异常?异常是程序在运行过程中发生的错误或意外情况,它可能导致程序的中断或崩溃。
3.2 Java中的异常处理机制有哪些?Java中的异常处理机制包括try-catch语句、throw语句和throws关键字等。
JAVA程序设计实用教程 (第3版) 叶核亚 习题答案 所有答案1 12章

Java 源程序文件经编译后生成字节码文件,若是 application 应用程序,则将字节码文件 交由 Java 解释器解释执行,最后在 windows 操作系统上运行。若是 applet 应用程序,则将 字节码文件嵌入超文本文件并下载到 web 浏览器上,最后由 windows 操作系统中的 Java 虚 拟机运行。
int i=1,n=10,s=0; for(i=1,i<=n,i++);
s+=i; System.out.pointln(“Sum=1+……+”+n+”=”+s); 有错误,正确的如下
int i=1,n=10,s=0; for(i=1,i<=n,i++)
s+=i; System.out.pointln(“Sum=1+……+”+n+”=”+s);
8.作为一个软件开发人员,应该具备那些基础知识用以开发 windows 应用程序? 【答】略
第2章
1.标示符和关键字在定义和使用方面有何区别? 【答】定义方面:标示符是用户定义的、以字母开头的字母数字序列,关键字是由 Java 语 言定义的、具有特定含义的英文单词。
使用方面:标示符用于命名变量、常量、类、对象等元素,每一个关键字都有特定的含 义,不能被赋予别的含义。
11.输出以下数字的形式; (1) 0 0 0 0
011 1 012 2 012 3 〖解答〗采用二重循环的程序如下。
public class Phalanx {
public static void main(String args[]) {
JAVA核心基础含答案

JAV A核心基础1.请解释Java实现可移植性的原理。
所有的Java程序都需要经过编译形成*.class文件,而后此文件要求在相应的JVM上执行,而不同的操作系统有不同版本的JVM支持,只要JVM的支持不变,那么就可以在任意的操作系统间移植。
2.请解释PATH和CLASSPATH的区别?·PATH:指的是操作系统的路径,用于指定可执行程序的目录;·CLASSPATH:指的是类的加载路径,在使用java命令解释类的时候使用。
3.请问Java中的char型变量能否保存一个中文?由于Java使用的是UNICODE编码,此编码可以保存十六进制的数据,那么就可以保存中文内容。
4.请解释&和&&、|和||的关系·在位运算操作上:|-&:表示位与操作,有一位是0结果就是0,只有全部为1的时候结果才是1;|-|:表示位或操作,有一位是1结果就是1,只有两位全部为0的时候结果才是0;·在逻辑运算:|-逻辑与操作:|-普通与(&):所有的判断条件都要执行;|-短路与(&&):只要前面的条件返回的是false,那么后面的条件不再判断,最终结果就是false;|-逻辑或操作:|-普通或(|):所有的判断条件都要执行;|-短路或(||):只要前面的判断条件返回的是true,那么后面的条件不再判断,最终结果就是true。
5.请解释在String比较之中“==”和equals()的区别?·“==”:数值比较,比较的是两个字符串的内存地址数值;·“equals()”:内容比较,是String类之中所定义的一个方法。
6.请解释String类对象两种实例化方式的区别?·直接赋值:只会产生一块堆内存空间,而且可以自动入池,供下次使用;·构造方法:会产生两块堆内存空间,不会自动入池,用户可以使用intern()方法手工入池。
Java核心技术习题答案

Java核心技术习题答案马志强张然李雷孝编清华大学出版社目录第一章Java语言概述 (3)第二章 Java语法基础 (4)第三章面向对象编程 (15)第四章数组 (38)第五章高级类特性 (45)第六章 GUI编程 (51)第七章集合框架 (62)第九章集合框架 (77)第十章 IO流 (81)第十一章 JDBC访问数据库 (84)第十二章线程 (85)第十三章网络编程 (90)第一章Java语言概述一、选择题1-5 ABBBB6-8 AAB二、填空题1. MyClass MyClass.class2. String数组(String[])一3. javac A.java java A三、程序设计题1、搭建Java运行环境,并写一个Java程序打印输出“开始学习Java程序设计!”。
1)首先安装JDK;2)配置环境变量path,classpath可配可不配;3)FirstJava.javapublic class HelloWorld{public static void main(String[] args){开始学习Java程序设计!");}}2、修改下面四个Java源文件中的错误,使其能够编译和运行。
Test1.java:TestAnother1类不能再使用public修饰,一个源文件中只能有一个类或者接口用public修饰;Test2.java:源文件中public修饰的类的名字为Testing2,和源文件名字不一致;Test3.java:Test3类的main方法的形参类型为String[];Test4.java:Test4类的main方法必须使用static关键字修饰。
第二章 Java语法基础一、选择题1-5 BCADB6-9 DCCC二、填空题1. abc ,a1, _abc, _1a, ab123#a,const,$abc,1abc,if,$#1sa,$_a,_$q12.题目出现问题:代码修改为 ch = (char) (ch+1);结果为’B’;如果直接结果为98。
JAVA习题题目及答案

第1章问答题及作业题第1章问答题1、发明Java语言的原因是什么?发明Java语言的主要贡献者是谁?2、“Java编译器将源文件编译生成的字节码是机器码”,这句话正确吗?3、Java程序的主类必须含有怎样的方法?4、“Java应用程序必须含有一个类是public类”,这句话正确吗?5、“Java Applet程序的主类必须是public类”,这句话正确吗?6、请叙述Java源文件的命名规则。
7、源文件生成的字节码在运行时都加载到内存中吗?8、怎样编写加载运行Java Applet的简单网页?9、编译器使用“-source”参数的作用是什么?“-source”参数的默认取值是什么?第1章作业题1.参照例1-1编写一个Java应用程序,程序能在命令行中输出“早上好,Good Morning”。
2.参照例1-2编写一个Java Applet程序,程序能在浏览器中显示“你好,Hello”。
第2章问答题及作业题第2章问答题1、什么是标识符?标识符的规则是什么?2、什么是关键字?请说出5个关键字。
3、Java的基本数据类型是什么?4、下列哪些语句是错误的?int x=120;byte b=120;b=x;5、下列哪些语句是错误的?float x=12.0;float y=12;double d=12;y=d;6、下列两条语句的作用是等价的吗?char x=97;char x=’a’;7、下列语句输出的结果是什么?int a=97;byte b1=(byte)128;byte b2=(byte)-129;System.out.printf(“%c,%d,%d”,a,b1,b2);8、数组是基本数据类型吗?怎样获取一维数组的长度?9、假设有两个int类型数组:int[] a=new int[10];int[] b=new int[8];b=a;a[0]=100;b[0]的值一定是100吗?10、下列两条语句的作用等价吗?int[] a={1,2,3,4,5,6,7,8};int[] a=new int[8];}第2章作业题1.参照例2-1编写一个Java应用程序,输出俄文字母表。
java核心技术习题答案定稿版

j a v a核心技术习题答案 HUA system office room 【HUA16H-TTMS2A-HUAS8Q8-HUAH1688】Java核心技术习题答案马志强张然李雷孝编清华大学出版社目录第一章Java语言概述 (3)第二章 Java语法基础 (4)第三章面向对象编程 (15)第四章数组 (38)第五章高级类特性 (45)第六章 GUI编程 (51)第七章集合框架 (62)第九章集合框架 (77)第十章 IO流 (81)第十一章 JDBC访问数据库 (84)第十二章线程 (85)第十三章网络编程 (90)第一章Java语言概述一、选择题1-5 ABBBB6-8 AAB二、填空题1. MyClass MyClass.class2. String数组(String[])一3. javac A.java java A三、程序设计题1、搭建Java运行环境,并写一个Java程序打印输出“开始学习Java程序设计!”。
1)首先安装JDK;2)配置环境变量path,classpath可配可不配;3)FirstJava.javapublic class HelloWorld{public static void main(String[] args){开始学习Java程序设计!");}}2、修改下面四个Java源文件中的错误,使其能够编译和运行。
Test1.java:TestAnother1类不能再使用public修饰,一个源文件中只能有一个类或者接口用public修饰;Test2.java:源文件中public修饰的类的名字为Testing2,和源文件名字不一致;Test3.java:Test3类的main方法的形参类型为String[];Test4.java:Test4类的main方法必须使用static关键字修饰。
第二章 Java语法基础一、选择题1-5 BCADB6-9 DCCC二、填空题1. abc ,a1, _abc, _1a, ab123#a,const,$abc,1abc,if,$#1sa,$_a,_$q12.题目出现问题:代码修改为 ch = (char) (ch+1);结果为’B’;如果直接结果为98。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java核心技术习题答案马志强张然李雷孝编清华大学出版社目录第一章Java语言概述 (3)第二章 Java语法基础 (4)第三章面向对象编程 (15)第四章数组 (38)第五章高级类特性 (45)第六章 GUI编程 (51)第七章集合框架 (62)第九章集合框架 (77)第十章 IO流 (81)第十一章 JDBC访问数据库 (84)第十二章线程 (85)第十三章网络编程 (90)一、选择题1-5 ABBBB6-8 AAB二、填空题1. MyClass MyClass.class2. String数组(String[])一3. javac A.java java A三、程序设计题1、搭建Java运行环境,并写一个Java程序打印输出“开始学习Java程序设计!”。
1)首先安装JDK;2)配置环境变量path,classpath可配可不配;3)FirstJava.javapublic class HelloWorld{public static void main(String[] args){开始学习Java程序设计!");}}2、修改下面四个Java源文件中的错误,使其能够编译和运行。
Test1.java:TestAnother1类不能再使用public修饰,一个源文件中只能有一个类或者接口用public修饰;Test2.java:源文件中public修饰的类的名字为Testing2,和源文件名字不一致;Test3.java:Test3类的main方法的形参类型为String[];Test4.java:Test4类的main方法必须使用static关键字修饰。
一、选择题1-5 BCADB6-9 DCCC二、填空题1. abc ,a1, _abc, _1a, ab123#a,const,$abc,1abc,if,$#1sa,$_a,_$q12.题目出现问题:代码修改为 ch = (char) (ch+1);结果为’B’;如果直接结果为98。
3.true(真) false(假)4.45. 2 2 false 26.m*20/100 (double)m*20/100三、编程题1、由命令行输入一个成绩,使用switch结构求出成绩的等级。
A:90-100;B:80-89;C:70-79;D:60-69;E:0-59。
public class IfElseTest {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int grade = sc.nextInt();if(grade<0 || grade>100){System.exit(0);}int temp =(int)Math.floor(grade/10);switch(temp){case 10:{break;}case 9:{break;}case 8:{break;}case 7:{break;}case 6:{break;}default:{break;}}}}2、计算圆周率:PI=4-4/3+4/5-4/7... ...;打印出第一个大于3.1415小于3.1416的值。
public class PITest{public static void main(String[] args){double result=0.0;for(int i=1;;i++){double m=4.0/(2*i-1);if((i%2)==0){result-=m;}else{result+=m;}if(result>3.1415 && result<3.1416){break;}}}}3、输入一个数据n,计算斐波那契数列(Fibonacci)的第n个值。
斐波那契数列:1、1、2、3、5、8、13、21、34、……。
public class FibonacciTest{public static void main(String[] args){Scanner sn=new Scanner(System.in);int num=sn.nextInt();int i=1;int n1=1,n2=1;while(i<=num){if(i==1||i==2){n2=1;}else{int temp=n2;n2=n1+n2;n1=temp;}i++;}第"+num+"个值为:"+n2);}}4、计算多项式1-1/3+1/5-1/7+1/9......的值。
1)要求出前50项和值。
2)要求出最后一项绝对值小于1e-5的和值。
public class SumTest{public static void main(String[] args){double sum=0.0;for(int i=1;i<=50;i++){if(i%2==0){sum=sum-1.0/(2*i-1);}else{sum=sum+1.0/(2*i-1);}}前50项和值:"+sum);double item=0.0;int j=1;sum=0.0;while(item<0.00001){item=1.0/(2*j-1);if(j%2==0){sum-=item;}else{sum+=item;}j++;}最后一项绝对值小于1e-5的和值:"+sum);}}5、产生100个0-999之间的随机整数,然后判断这100个随机整数哪些是素数,哪些不是?public class PrimeTest {public static void main(String[] args) {PrimeTest t = new PrimeTest();for(int i=0;i<100;i++){int num = (int)(Math.random()*1000);if(t.isPrime(num)){是素数!");}else{不是素数!");}}}public boolean isPrime(int num){for(int i=2;i<=num/2;i++){if(num%i==0){第一个被"+i+"整除!");return false;}}return true;}}6、在屏幕上打印出n行的金字塔图案,如,若n=3,则图案如下:*********public class PrintStar{public static void main(String[] args){Scanner sn=new Scanner(System.in);int rows=sn.nextInt();for(int i=1;i<=rows;i++){for(int j=1;j<=rows-i;j++){}for(int k=1;k<=2*i-1;k++){}}}}7、歌德巴赫猜想,任何一个大于六的偶数可以拆分成两个质数的和,打印出所有的可能。
如输入10,结果为:10=5+5;10=3+7。
public class Gede {public static void main(String[] args) {int n = Integer.parseInt(args[0]);if(n<=6 || n%2!=0){错误的参数!");return;}Gede g = new Gede();//因为1不是素数,n-2是偶数,所以从3开始循环for(int i=3;i<=n/2;i++){if(i%2==0){continue;}if(g.isPrime(i) && g.isPrime(n-i)){}}}/*** 判断num是否是素数*/public boolean isPrime(int num){for(int i=2;i<=num/2;i++){if(num%i==0){return false;}}return true;}}四、实训题万年历的设计与实现。
本程序包含两个类CalenderModelA和TestCalenderModelA。
CalenderModelA实现了赛事日期设置等主要功能,程序文件CalenderModelA .java。
public class CalenderModelA{//计算从公元始的天数public int getNumberOfDay(int year, int month, int day){int total = 0;int limit = getTotalDaysOfMonth(year, month);if(day<=limit){for (int y = 1; y < year; y++){total += (this.isLeapYear(year) ? 366 : 365);}for (int m = 1; m < month; m++){total += (this.getTotalDaysOfMonth(year, month));}total+=day;return total;}else{您输入的日期非法");return -1;}}//打印万年历public void show(int year, int month){int total = 0;//计算从公元始到今年之前的总天数for (int y = 1; y < year; y++){total += (this.isLeapYear(y) ? 366 : 365);}//计算今年到本月前的总天数for (int m = 1; m < month; m++){total += (this.getTotalDaysOfMonth(year, m));}//计算本月1日是星期几total = total % 7;int d1 = (total + 1) % 7;int d2 = this.getTotalDaysOfMonth(year, month);年" + month + "月");String[] s = { "日", "一", "二", "三", "四", "五", "六" };for (int i = 0; i < 7; i++) {}for(int i=0;i<d1;i++){}//打印本月日历for (int i = d1,j=1; i < d1 + d2; i++,j++) {if((i+1)%7 == 0){}}}//判断是否为闰年public boolean isLeapYear(int year){return ((year%4 == 0) && (year % 100 != 0)) || (year % 400 == 0); }//计算某年某月天数public int getTotalDaysOfMonth(int year, int month){int total = 0;switch (month) {case 1:case 3:case 5:case 7:case 8:case 10:case 12:total = 31;break;case 2:total = this.isLeapYear(year) ? 29 : 28;break;case 4:case 6:case 9:case 11:total = 30;break;}return total;}}TestCalenderModelA实现main方法,具有输入大赛起始和终止日期,输出日历,并计算大赛周期的功能。