Java核心技术习题答案

合集下载

JAVA核心技术:卷1+卷2(原书第8版)

JAVA核心技术:卷1+卷2(原书第8版)
3 结 语
不同类型油藏储量失控原因各有差异 ,其中整装油藏 以油水井报废为主 ,断块油藏主要是 由于油水井损坏 ,低 渗 透油 藏主 要是 技术 经济 原 因导致 井 距过大 。
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各章习题及答案

JAVA各章习题及答案
2
三、编程题 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各章习题的答案。

第一章: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程序设计实用教程 (第3版)  叶核亚 习题答案  所有答案1 12章
7.什么是解释执行?Java 怎样解释执行两种应用程序? 【答】解释执行即将字节码解释成本地机器码并执行。
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核心基础含答案

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核心技术习题答案马志强张然李雷孝编清华大学出版社目录第一章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习题题目及答案

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核心技术习题答案定稿版

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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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方法,具有输入大赛起始和终止日期,输出日历,并计算大赛周期的功能。

相关文档
最新文档