Java 2实用教程第5版_第10章(new) 文件和输入输出流 1
Java2实用教程
Java2实用教程
+
Java是一种面向对象的程序设计语言,它可以让开发者运用一种简单、易于理解的方式来构建功能强大的应用程序、构建网络服务和构建系统软件。
本课程是Java 2的实用
教程,旨在培养技术人员,使他们能够通过有针对性的培训,学会使用Java 2的各种工
具和技术,并能成功地开发和部署Java 应用程序。
本课程主要涵盖以下内容:
1)Java基础知识:介绍Java语言的基本概念;熟悉Java SE编程平台及Java SE
开发工具;学习熟悉Java 基础技术:变量、编程控制语句、异常处理、多线程编程和文
件操作;掌握Java企业级开发技术:网络编程、RMI、JDBC、JNDI、JMS、Servlets和
Java Beans;
2)Java企业级应用程序开发:学习如何使用Java编写商业级应用程序,如企业应用,大型数据管理系统,Web应用程序,数据挖掘等;掌握Java水平集群部署及应用程序性能测试技术;
3)Web开发:学习如何使用新的Web技术,如HTML5+CSS3、XML、AJAX、JSON等,开发功能强大的Web应用;
4)移动应用开发:学习如何使用Android 和iOS 开发移动应用;
5)以及其他相关技术,如框架、容器技术等,深入学习Java应用程序开发。
本课程将为参加者提供实用的知识和技能,在学习完本课程后,参加者将掌握Java
的核心技术,能够编写高效的Java 代码,并有能力开发和部署Java应用程序。
Java 2实用教程(第5版)习题解答,DOC
习题解答习题1(第1章)一、问答题1.JamesGosling2.需3个步骤:1)用文本编辑器编写源文件。
2)使用javac编译源文件,得到字节码文件。
3)3.4.5.java和6.javaBird7.1.B。
21.(a)”,得到“习题21.2.不是关键字。
63.4.float51.C。
2.ADF。
3.B。
4.BE。
5.【代码2】【代码3】【代码4】【代码5】。
6.B。
三、阅读或调试程序1.属于操作题,解答略。
2.属于操作题,解答略。
3.属于操作题,解答略。
4.【代码1】:4。
【代码2】:b[0]=1。
5.【代码1】:40。
【代码2】:7四、编写程序1.publicclassE{publicstaticvoidmain(Stringargs[]){他');}}2.publicclassE{publicstaticvoidmain(Stringargs[]){charcStart='α',cEnd='ω';for(charc=cStart;c<=cEnd;c++)"+c);}}习题31.2.不可以3.4.5.结束6.可以1.A。
21.你,苹,2.Jeep3.1.sum=sum+a;i++;a=a*i;}}}2.publicclassXiti2{publicstaticvoidmain(Stringargs[]){inti,j;for(j=2;j<=100;j++){for(i=2;i<=j/2;i++){if(j%i==0)if(i>j/2){"+j);}}}}3.classXiti3{publicstaticvoidmain(Stringargs[]){doublesum=0,a=1,i=1;do{sum=sum+a;i++;}}}}4.}}}}5.item=item*10+m;}}}6.publicclassXiti6{publicstaticvoidmain(Stringargs[]){intn=1;longsum=0;while(true){sum=sum+n;n++;if(sum>=8888)break;}}}习题4(第4章)一、问答题1.封装、继承和多态。
Java2第10章PPT教学课件
byte b[]=new byte[fi.available()]; //创建byte类型的数组b
fi.read(b); //将图形文件读入b数组
fo.write(b); //将b数组里的数据写入新文件my_icon.gif
System.out.println("文件已被拷贝并被更名");
fi.close();
第10章
Java的输入输出 与文件处理
2020/12/11
1
通过本章的学习,主要掌握以下知识点:
流的概念 基本的输入输出流 标准输入输出 Reader和Writer流类 对文件的随机访问
本章的重点:
流的应用
本章的难点:
流的应用
2020/12/11
2
10.1 Java的输入输出类库
利用java.io类库中所提供的输入输出 类,Java程序不但可以很方便地实现多种 输入输出操作,而且还可实现对复杂的文 件与目录的管理。
2020/12/11
6
10.2 使用InputStream和OutputStream流类
InputStream 和 OutputStream 类 是 Java 里 用来处理以位(bit)为主的流,也就是说,除了 纯文本文件之外,它们也可用来处理二进制文件 (binary file)的数据。
2020/12/11
fo.close();
2020}/12/11
功能说明
从输入流中的当前位置读入一个字节(8bit)的二进制数据,然 后以此数据为低位字节,配上8个全0的高位字节合成一个16 位的整型量(0~255)返回给调用此方法的语句,若输入流中 的当前位置没有数据,则返回-1。
从输入流中的当前位置连续读入多个字节保存在数组b[]中, 同时返回所读到的字节数。
jAVA2程序设计基础第十章
boolean delete()
void deleteonExit() boolean mkdir() boolean mkdirs() boolean renameTo(File dest)
删除关联文件或目录,不能删除非空的目录
在Java虚拟机终止时删除关联文件或目录 新建一个名为所关联目录的目录 新建一个名为所关联目录的目录,关联路径中 并不存在的目录也将创建 将所关联文件更名至指定File对象关联的文件
10.3 字 节 流
InputStream/OutputStream继承体系中各子类的说明见表10.3和表10.4。 FilterInputStream和FilterOutputStream各子类的说明见表10.5和表10.6。 10.3.1 10.3.2 10.3.3 10.3.4 10.3.5 10.3.6 10.3.7 ByteArrayInputStream ByteArrayOutputStream FileInputStream FileOutputStream FilterInputStream FilterOutputStream SequenceInputStream
第10章 I/O系统
教学提示:从本章开始 ,将介绍Java中较为高级的内容 。本章介
绍Java的I/O(输入/输出)系统,主要包括文件的基本操作 , Java 中流的 概念及其应用,以及随机访问文件。学习完本章内容后,读者对Java的
I/O系统将有一个整体上的认识,并有能力实现一般的输入/输出应用。
表10.3 InputStream的子类
类 名 ByteArrayInputStrea m FileInputStream 功 能 与字节数组关联的输入流 与文件关联的输入流 构造方法参数说明 一个字节数组,作为该输入流的数据源, 内部输入缓冲区从其中获取数据 File对象、FileDescriptor对象或文件名, 其代表的文件作为该输入流的数据源, 该文件必须实际存在 一个输入流,该过滤器输入流从其中获 取数据 一个输入流,对象输入流从该输入流中 获取对象信息
Java-2实用教程(第5版)习题解答
习题解答习题1(第1章)一、问答题1.Java语言的主要贡献者是谁?2.开发Java应用程序需要经过哪些主要步骤?3.Java源文件是由什么组成的?一个源文件中必须要有public类吗?4.如果JDK的安装目录为D:\jdk,应当怎样设置path和classpath的值?5.Java源文件的扩展名是什么?Java字节码的扩展名是什么?6.如果Java应用程序主类的名字是Bird,编译之后,应当怎样运行该程序?7.有哪两种编程风格,在格式上各有怎样的特点?1.James Gosling2.需3个步骤:1)用文本编辑器编写源文件。
2)使用javac编译源文件,得到字节码文件。
3)使用解释器运行程序。
3.源文件由若干个类所构成.对于应用程序,必须有一个类含有public static void main(String args[])的方法,含有该方法的类称为应用程序的主类。
不一定,但至多有一个public类。
4.set classpath=D:\jdk\jre\lib\rt。
jar;。
;5。
java和class6. java Bird7。
独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)二、选择题1.B.2.D.1.下列哪个是JDK提供的编译器?A) java。
exeB) javac.exeC) javap。
exeD) javaw.exe2.下列哪个是Java应用程序主类中正确的main方法?A) public void main (String args[])B) static void main (String args[ ])C) public static void Main (String args[])D) public static void main (String args[ ])三、阅读程序阅读下列Java源文件,并回答问题。
public class Person {void speakHello(){System。
Java2实用教程(第5版)习题解答(活动za)
;
;
( ) {
;
}
( ) {
;
}
(){
("速度:"());
("硬盘容量:"());
}
}
{
( []) {
();
();
();
();
();
();
();
();
}
}
习题
一、问答题
.不可以。
.是。
.不继承。
.声明与父类同名的成员变量。
.子类重写的方法类型和父类的方法的类型一致或者是父类的方法的类型的子类型,重写的方法的名字、参数个数、参数的类型和父类的方法完全相同。重写方法的追求是隐藏继承的方法,子类通过方法的重写可以把父类的状态和行为改变为自身的状态和行为。
();
("使用结构");
();
}
}
{
;模型
;视图
;视图
;控制器
() {
();
();
();
}
() {
();
();
();
();
();
("计算面积");
();
( ("上底:"));
();
( ("下底:"));
();
( ("高:"));
();
();
();
();
( ());
}
( ) {
{
(()());
(()());
}
() {
"狗";
}
}
{
() {
("喵喵...喵喵");
Java简明教程第2版 第10章 Java输入输出流
Java简明教程(第二版)
第10章 Java输入/输出流
第5页
主要内容
10.1 引言 10.2 流的概念 10.3 文件 10.4 字节流 10.5 字符流 10.6 本章小结 10.7 思考和练习
Java简明教程(第二版)
第10章 Java输入/输出流
第6页
10.2 流的概念
Java用流的概念来描述输入输出。Java提供的输
Java简明教程(第二版)
第10章 Java输入/输出流
第15页
扩充的标准输入
Java采用双字节存储字符,是为了将字符与汉字 统一起来,方便处理。字符流即指双字节流。标 准输入提供的read()方法显然不够方便,因为它 是以单个字节或字节数组的方式来获取输入的, 而通常需要用户输入的数据却是其他类型的,如 字符串、int、double等。怎么办呢?Java采用 了一种称为Decorator(包装)的设计模式来对标准 输入进行了功能扩充,具体什么是Decorator设 计模式,这里不做介绍,大家只要知道它是用来 给原对象扩充功能(即再次加工)用的就可以了。
第10章 Java输入/输出流
本章概述 本章的学习目标 主要内容
Java简明教程(第二版)
第10章 Java输入/输出流
第1页
本章概述
输入和输出是人机交互的重要手段,Java 提供了基于流的基本I/O(输入/输出)系统。 Java在java.io包中定义了定义了实现各种 功能的I/O流类。本章将研究java.io包提供 的对I/O操作的支持。包括字节流和字符流 、文件的读写、处理I/O异常等内容。通过
//设置
Java简明教程(第二版)
第10章 Java输入/输出流
第21页
《Java 2实用教程(第5版)》
一、课程的性质和教学目的课程性质:Java不依赖平台的特点使得它受到广泛的关注,已成为网络时代最重要的编程语言之一。
目前,Java语言不仅是一门正在被广泛使用的编程语言,而且已成为软件开发人员应当掌握的一门基础语言,因为很多新的技术领域都涉及到了Java。
国内外许多大学已将Java语言列入了本科教学计划,掌握Java已经成为共识。
《Java程序设计》是软件工程专业、计算机科学与技术等相关专业的一门重要的程序设计语言类的必修课程。
教学目的:通过本课程的学习,要求学生达到下列目标。
1. 理解面向对象程序设计的思想,掌握面向对象的3个特性:封装性、继承性和多态性。
2. 理解Java的平台无关性,掌握用Java语言进行面向对象程序设计的方法。
3. 掌握Java中常用工具类的使用,及用Java设计图形用户界面程序的方法和技巧。
4. 培养学生应用Java解决和处理实际问题的思维方法与基本能力。
二、课程教学内容1. Java语言基础知识Java程序的开发环境;Java程序的基本结构;Java语言的基本数据类型、表达式、语句、数组。
Java 编程规范。
2. 类与对象类的定义,对象的创建和使用,对象的访问权限。
对象的封装性。
3. 继承、多态与接口子类的定义,继承的含义,方法的重写和接口及接口回调。
理解继承性、与多态性。
4. 字符串与常用类字符串,正则表达式,Data类,Math类和Calendar类。
5. GUI编程Java事件处理模型,常用组件的使用。
6. 输入、输出流Java 输入/出流类;文件和文件的读写。
掌握流的套接。
7. JDBCDerby数据库的实用,使用JDBC连接数据库的过程,进行查询、更新、插入数据的方法。
8.网络编程URL类 ,InetAdress类,套接字,UDP数据报9.集合框架三、课程教学的基本要求1.基本知识了解Java的特点,理解Java的平台无关性,掌握Java语言的语法知识和常用工具类的使用,掌握Java事件的处理模型及GUI编程。
Java-2实用教程(第5版)习题解答
习题解答习题1(第1章)一、问答题1.Java语言的主要贡献者是谁?2.开发Java应用程序需要经过哪些主要步骤?3.Java源文件是由什么组成的?一个源文件中必须要有public类吗?4.如果JDK的安装目录为D:\jdk,应当怎样设置path和classpath的值?5.Java源文件的扩展名是什么?Java字节码的扩展名是什么?6.如果Java应用程序主类的名字是Bird,编译之后,应当怎样运行该程序?7.有哪两种编程风格,在格式上各有怎样的特点?1.James Gosling2.需3个步骤:1)用文本编辑器编写源文件。
2)使用javac编译源文件,得到字节码文件。
3)使用解释器运行程序。
3.源文件由若干个类所构成。
对于应用程序,必须有一个类含有public static void main(String args[])的方法,含有该方法的类称为应用程序的主类。
不一定,但至多有一个public类。
4.set classpath=D:\jdk\jre\lib\rt.jar;.;5.java和class6. java Bird7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)二、选择题1.B。
2.D。
1.下列哪个是JDK提供的编译器?A) java.exeB) javac.exeC) javap.exeD) javaw.exe2.下列哪个是Java应用程序主类中正确的main方法?A) public void main (String args[ ])B) static void main (String args[ ])C) public static void Main (String args[])D) public static void main (String args[ ])三、阅读程序阅读下列Java源文件,并回答问题。
public class Person {void speakHello() {}}class Xiti {public static void main(String args[]) {Person zhang = new Person();zhang.speakHello();}}(a)上述源文件的名字是什么?(b)编译上述源文件将生成几个字节码文件?这些字节码文件的名字都是什么?(c)在命令行执行java Person得到怎样的错误提示?执行java xiti得到怎样的错误提示?执行java Xiti.class得到怎样的错误提示?执行java Xiti得到怎样的输出结果?1.(a)Person.java。
Java2实用教程(第5版)最新答案-耿祥义
HardDisk.java
public class HardDisk { int amount; int getAmount() {
return amount; } public void setAmount(int amount) {
this.amount = amount; } }
PC.java
} }
6. public class Xiti6 {
public static void main(String args[]) { int n=1; long sum=0; while(true) { sum=sum+n; n++; if(sum>=8888) break; } System.out.println("满足条件的最大整数:"+(n-1));
}
Test.java
public class Test { public static void main(String args[]) { CPU cpu = new CPU(); HardDisk HD=new HardDisk(); cpu.setSpeed(2200); HD.setAmount(200); PC pc =new PC(); pc.setCPU(cpu); pc.setHardDisk(HD); pc.show(); }
一、问答题 1.boolean 2.不可以 3.boolean 4. 不是必须的 5.结束 while 语句的执行 6.可以
二、选择题
1.A。 2.C。 3.C。
三、阅读程序
1.你,苹,甜 2.Jeep 好好 3.x=-5,y=-1
四、编程序题 1.public class Xiti1 {
Java2实用教程(第5版)答案_耿祥义
Java2实用教程(第5版)最新答案耿祥义第1章一、问答题1.James Gosling2.需3个步骤:用文本编辑器编写源文件。
使用javac编译源文件,得到字节码文件。
使用解释器运行程序。
3.由类所构成,应用程序必须有一个类含有public static void main(String args[])方法,含有该方法的类称为应用程序的主类。
不一定,但最多有一个public类。
4.set classpath=D:\jdk\jre\lib\rt.jar;.;5.java和class6.java Bird7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)二、选择题1.B。
2.D。
三、阅读程序1.(a)Person.java。
(b)两个字节码,分别是Person.class和Xiti.class。
(c)得到“NoSuchMethodError”,得到“NoClassDefFoundError: Xiti/class”,得到“您好,很高兴认识您nice to meet you”第2章一、问答题1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。
标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。
false不是标识符。
2.关键字就是Java语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。
不是关键字。
class implements interface enum extends abstract。
3.boolean,char,byte,short,int,long,float,double。
4.float常量必须用F或f为后缀。
double常量用D或d为后缀,但允许省略后缀。
5.一维数组名.length。
二维数组名.length。
二、选择题1.C。
2.ADF。
3.B。
4.BE。
5.【代码2】【代码3】【代码4】【代码5】。
Java 2实用教程(第5版)习题解答
习题解答习题1(第1章)一、问答题1.James Gosling2.需3个步骤:1)用文本编辑器编写源文件。
2)使用javac编译源文件,得到字节码文件。
3)使用解释器运行程序。
3.源文件由若干个类所构成。
对于应用程序,必须有一个类含有public static void main(String args[])的方法,含有该方法的类称为应用程序的主类。
不一定,但至多有一个public类。
4.set classpath=D:\jdk\jre\lib\rt.jar;.;5.java和class6. java Bird7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)二、选择题1.B。
2.D。
三、阅读程序页脚内容11.(a)Person.java。
(b)两个字节码,分别是Person.class和Xiti.class。
(c)得到“NoSuchMethodError”,得到“NoClassDefFoundError: Xiti/class”,得到“您好,很高兴认识您nice to meet you”习题2(第2章)一、问答题1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。
标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。
false不是标识符。
2.关键字就是Java语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。
true和false 不是关键字。
6个关键字:class implements interface enum extends abstract。
3.boolean,char,byte,short,int,long,float,double。
4.float常量必须用F或f为后缀。
double常量用D或d为后缀,但允许省略后缀。
5.一维数组名.length。
二维数组名.length。
二、选择题1.C。
2.ADF。
Java2实用教程2(第五版)耿祥义课后习题参考答案
Java2实用教程2(第五版)耿祥义课后习题参考答案Java2(第5版)最新答案耿祥义第1章一、问答题1.James Gosling2.需3个步骤:1.用文本编辑器编写源文件。
2.使用javac编译源文件,得到字节码文件。
3.使用解释器运行程序。
3.由类所构成,应用程序必须有一个类含有public static void main(String args[])方法,含有该方法的类称为应用程序的主类。
不一定,但最多有一个public类。
4.set classpath=D:\jdk\jre\lib\rt.jar;.;5. java和class6. java Bird7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)二、选择题1.B。
2.D。
三、阅读程序1.(a)Person.java。
(b)两个字节码,分别是Person.class 和Xiti.class。
(c)得到“NoSuchMethodError”,得到“NoClassDefFoundError: Xiti/class”,得到“您好,很高兴认识您nice to meet you”第2章一、问答题1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。
标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。
false不是标识符。
2.关键字就是Java语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。
不是关键字。
class implements interface enum extends abstract。
3.boolean,char,byte,short,int,long,float,double。
4.float常量必须用F或f为后缀。
double常量用D或d为后缀,但允许省略后缀。
5.一维数组名.length。
二维数组名.length。
二、选择题1.C。
2.ADF。
Java 2实用教程(第5版)
教材特色
该教材注重可读性和实用性,配备了例题和习题。该教材采用JDK1.8(JDK8)。该教材针对较难理解的问题, 都是从简单到复杂,逐步深入地引入例子,便于读者掌握Java面向对象编程思想。
该教材是《Java2实用教程》的第5版,继续保留原教材的特点——注重教材的可读性和实用性,许多例题都 经过考虑,既能帮助理解知识,又具有启发性。
作者简介
耿祥义,1995年中国科学技术大学博士毕业,获理学博士学位。1997年从中山大学博士后流动站出站,大连 交通大学教授。有教授Java语言的经验。
谢谢观看
第8章讲述常用的实用类,包括字符串、日期、正则表达式、模式匹配以及数学计算等实用类,讲解了怎样使 用StringTokenizer、Scanner、Pattern和Matcher类解析字符串。
第9章介绍了组件的有关知识,把对事件处理的讲解分散到具体的组件,只要真正理解掌握了一种组件事件的 处理过程,就会掌握其他组件的事件处理。输入流、输出流是Java语言中的经典内容,尽管Java提供了二十多种 流,但它们的用法、原理却很类似。
该教材对部分章节的内容做了调整,删除了原第16章的有关JavaApplet的内容;特别修改了原第11章,将数 据库改为MySQL数据库。该教材由耿祥义、张跃平编著。
2017年5月1日,该教材由清华大学出版社出版。
内容简介
全书共分15章,分别介绍了Java的基本数据类型,运算符、表达式和语句,类与对象,子类与继承,接口与 实现,内部类与异常类,常用实用类,组件及事件处理,输入、输出流,JDBC与MySQL数据库,Java多线程机制, Java络编程,图形、图像与音频,泛型与集合框架等内容。每章提供的二维码可观看相应章节的视频讲解。
全书共分15章,分别介绍了Java的基本数据类型,运算符、表达式和语句,类与对象,子类与继承,接口与 实现,内部类与异常类,常用实用类,组件及事件处理,输入、输出流,JDBC与MySQL数据库,Java多线程机制, Java络编程,图形、图像与音频,泛型与集合框架等内容。
Java2实用教程第五版课程设计
Java2实用教程第五版课程设计一、课程设计概述Java2实用教程第五版课程设计旨在帮助学生掌握和运用Java编程语言的高级特性。
本次课程设计主要包含以下内容:•项目背景:本次课程设计的项目背景是一个银行账户管理系统。
•项目要求:学生需要根据项目需求,设计并实现该系统的功能,并能够理解和应用Java的高级特性。
•项目目标:通过本次课程设计,学生能够掌握Java编程语言的高级特性,提高编程技能和实践能力。
二、项目需求银行账户管理系统的主要功能包括:1.添加账户:用户可以通过该功能添加新的账户,包括账户名、密码、账户类型和初始余额。
2.删除账户:用户可以通过该功能删除账户。
3.修改账户:用户可以通过该功能修改账户信息,包括账户名、密码、账户类型和余额。
4.查询账户:用户可以通过该功能查询账户信息。
5.转账功能:用户可以通过该功能进行账户之间的转账操作,包括转账金额、转出账户和转入账户。
三、设计思路本次课程设计采用MVC(Model-View-Controller)设计模式,以实现系统的高效、灵活和可维护性。
具体设计思路如下:1.Model层:该层负责处理数据和业务逻辑,包括实现账户的增删改查和转账操作,同时完成与数据库的交互操作等。
2.View层:该层负责系统的展示和用户交互,包括实现视图的渲染和响应用户的输入操作。
3.Controller层:该层负责连接Model层和View层,负责处理业务逻辑和控制系统的运行状态。
四、实现技术本次课程设计采用Java语言,同时结合以下技术实现:1.Spring框架:该框架可以方便地管理Java对象和控制反转,提高系统的解耦性和可维护性。
2.MyBatis框架:该框架可以方便地实现Java对象与数据库的交互操作,提高系统的性能和灵活性。
3.Bootstrap框架:该框架可以方便地实现系统的界面美化和响应式布局,提高用户体验。
五、系统架构系统架构+-----+ +--------+|View | ----- |Control |+-----+ +--------+| |+---------+ +--------+| Model | |Database|+---------+ +--------+六、实现步骤本次课程设计的具体实现步骤如下:1.设计并编写系统的数据库,包括表结构和数据内容。
Java2实用教程(第5版)最新答案-耿祥义
Java2(第5版)最新答案耿祥义第1章一、问答题1.James Gosling2.需3个步骤:1)用文本编辑器编写源文件。
2)使用javac编译源文件,得到字节码文件。
3)使用解释器运行程序。
3.由类所构成,应用程序必须有一个类含有public static void main(String args[])方法,含有该方法的类称为应用程序的主类。
不一定,但最多有一个public类。
4.set classpath=D:\jdk\jre\lib\rt.jar;.;5.java和class6. java Bird7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)二、选择题1.B。
2.D。
三、阅读程序1.(a)Person.java。
(b)两个字节码,分别是Person.class和Xiti.class。
(c)得到“NoSuchMethodError”,得到“NoClassDefFoundError: Xiti/class”,得到“您好,很高兴认识您nice to meet you”第2章一、问答题1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。
标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。
false不是标识符。
2.关键字就是Java语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。
不是关键字。
class implements interface enum extends abstract。
3.boolean,char,byte,short,int,long,float,double。
4.float常量必须用F或f为后缀。
double常量用D或d为后缀,但允许省略后缀。
5.一维数组名.length。
二维数组名.length。
二、选择题1.C。
2.ADF。
3.B。
4.BE。
5.【代码2】【代码3】【代码4】【代码5】。
Java2实用教程(第5版)最新答案-耿祥义
第1章
一、问答题 1.James Gosling 2.需 3 个步骤:
1) 用文本编辑器编写源文件。 2) 使用 javac 编译源文件,得到字节码文件。 3) 使用解释器运行程序。 3.由类所构成,应用程序必须有一个类含有 public static void main(String args[])方法,含 有该方法的类称为应用程序的主类。不一定,但最多有一个 public 类。 4.set classpath=D:\jdk\jre\lib\rt.jar;.; 5. java 和 class 6. java Bird 7. 独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行) 二、选择题 1.B。2.D。 三、阅读程序 1.(a)Person.java。(b)两个字节码,分别是 Person.class 和 Xiti.class。(c)得到 “NoSuchMethodError”,得到“NoClassDefFoundError: Xiti/class”,得到“您好,很高兴 认识您 nice to meet you”
第2章
一、问答题 1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识 符。标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。false 不是 标识符。 2.关键字就是 Java 语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来 用。不是关键字。class implements interface enum extends abstract。 3.boolean,char,byte,short,int,long,float,double。 4.float 常量必须用 F 或 f 为后缀。double 常量用 D 或 d 为后缀,但允许省略后缀。 5.一维数组名.length。二维数组名.length。 二、选择题 1.C。2.ADF。3.B。4.BE。5.【代码 2】【代码 3】【代码 4】【代码 5】。6.B。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FileInputStream fileInput = new FileInputStream(file);
int bytes = fileInput.read( buffer);
str = new String( buffer, 0, 10);
fileInput.close();
}
catch(Exception e) {
str= e.toString();
}
JOptionPane.showMessageDialog(null,str);
System.exit(0); //退出程序
}
}
27
【例10-2】
28
程序代码
import java.io.*; import javax.swing.*; import java.awt.*; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; class AreaFrame extends JFrame implements ActionListener {
7
File类
public void deleteOnExit()
public String[] list()
public File[] listFiles() public boolean mkdir() public boolean renameTo(File dest) public boolean setLastModified(long t) public boolean setReadOnly() public static File[] listRoots() public int compareTo(File pathname) public String getName()
public long length() public boolean createNewFile()
public boolean delete()
说明
测试应用程序是否可以读取此抽象路径名表示的文件 测试应用程序是否可以修改此抽象路径名表示的文件 测试此抽象路径名表示的文件或目录是否存在 测试此抽象路径名是否为绝对路径名 测试此抽象路径名表示的文件是否是一个目录 测试此抽象路径名表示的文件是否是一个标准文件 测试此抽象路径名指定的文件是否是一个隐藏文件 返回此抽象路径名表示的文件最后一次被修改的时间 返回由此抽象路径名表示的文件的长度;若目录则返回 值不确定 当指定的文件不存在时,使用此访问创建一个指定文件 删除此抽象路径名表示的文件或目录。若目录则必须为 空才能删除
18
字节流
字节文件输入流
– FileInputStream
19
字节文件输入流 FileInputStream
20
字节文件输入流 FileInputStream
21
示例
【例10-1】在下面的程序中,读取一个文本文件 test.dat,并将其显示到对话框上。 在编写程序之前,我们至少需要知道两件事:
public String getParent()
public File getParentFile()
在虚拟机终止时,请求删除此抽象路径名表示的文件 或目录 返回由此抽象路径名中的文件和目录名所组成字符串 数组
返回一个抽象路径名数组
创建此抽象路径名指定的目录
重新命名此抽象路径名表示的文件
设置由此抽象路径名所指定的文件或目录的最后一次 修改时间 设置此抽象路径名指定的文件或目录为只读
以字节为单位返回当前磁盘的剩余空间
public long getTotalSpace()
以字节为单位返回当前磁盘的总空间
public long getUsableSpace()
以字节为单位返回当前磁盘的可用空间
9
解决方案2
文本 程序
文 图像
件
视频
输入流/输出流 通道
计算机内存
数据输入/输出
涉及到的实体:
列出可用的文件系统根目录
按字母顺序比较两个抽象路径名
返回由此抽象路径名表示的文件或目录的名称
返回此抽象路径名的父路径名,如果此路径名无父目
录则返回null
返回此抽象路径名的父路径名,如果此路径名无父目
录则返回null
8
File类
public String getPath()
返回此抽象路径名
public String getAbsolutePath() 返回抽象路径名的绝对路径名的字符串形式
文件和输入输出流
任务场景
任务1:将外存或者外部设备上的数据读入到 内存 任务2:将内存中的数据写入到外存或者外部 设备上
初步解决方案
文本 程序 图像
视频
文 计算机内存 件
数据输入/输出
涉及到的实体:
– 磁盘文件
设计类:
– 文件类
File类
Java中每个File类的对象表示是一个文件或目录 。调用它的方法可以获得该文件或目录的属性, 完成对文件和目录的操作,如创建、删除等。
16
输入/输出流(文件流)
对文件进行输入输出处理的四个类:
– FileInputStream :字节文件输入流; – FileOutputStream :字节文件输出流; – FileReader :字符文件输入流; – FileWriter :字符文件输出流。
17
字节流
字节输入流(InputStream)和字节输出流(OutputStream)构 成字节流的祖先,用来读写如图片、声音之类的二进制文 件。这两个类直接继承了Object类。InputStream和 OutputStream都是抽象类,InputStream为其他所有字节 输入流的超类,而OutputStream为其他所有字节输出流的 超类。
str = new String( buffer, 0, 7 );
fileInput.close();
}
catch(Exception e) {
str= e.toString();
}
JOptionPane.showMessageDialog(null,str);
System.exit(0); //退出程序
5
File类
构造方法 File(String filename) File(String parent, String child) File(File parent, String child) File(URI uri)
说明 根据文件的路径名创建一个新的File对象 根据文件路径名和文件名创建一个新的File对象 根据指定目录的File对象和文件名创建一个新的File对象 根据URI所对应的路径名创建一个新的File对象
System.exit(0); //退出程序
}
24
}
程序代码
import java.io.*;
import javax.swing.*;
class Example10_1
{
public static void main( String args[ ])
{ byte buffer[ ] = new byte[2056];
13
流的表示
Java中的流是用类来表示
14
解决方案2’
图像
字
节
视频
文 件
字节输入流/输出流 通道
计算机内存
文本 程序
字符输入流/输出流
字
符
文
通道
件
计算机内存
输入/输出流(文件流)
就流的运行方向来说,流分为输入流和输出流, 输入流将外部数据引入计算机。输出流是交数据 引导到外部设备 就流的内容来说,流可分为字节流和字符流
public File getAbsoluteFile()
返回抽象路径名的绝对路径名形式
public String getCanonicalPath() 返回抽象路径名的规范路径名字符串
public File getCanonicalFile() 返回此抽象路径名的规范形式
public long getFreeSpace()
String str;
try {
File file=new File("G:\\Javaspace\\data\\test.dat");
FileInputStream fileInput = new FileInputStream(file);
int bytes = fileInput.read( buffer);
1. File file=new File(“G:\\Javaspace\\data\\test.dat");
程序代码
import java.io.*;
import javax.swing.*;
class Example10_1
{
public static void main( String args[ ])
try {
File file=new File("G:\\Javaspace\\data\\test.dat");
FileInputStream fileInput = new FileInputStream(file);
int bytes = fileInput.read( buffer);
str = new String( buffer, 0, 9);
class Example10_1
{
public static void main( String args[ ])
{ byte buffer[ ] = new byte[2056];