JavaCookbook-9.面向对象的技术10.输入和输出
2013-01-19 17:23
267 查看
大多数情况下,Java程序不需要编写数据结构的代码。默认情况下对象的toString方法返回的是类名符号@对象的hashcode,如果想输出别的信息,需要重写toString方法。
在对象的equals方法中,可以对两个对象进行比较。如果我们需要实现自定义比较,需要覆盖这个方法,这个方法一些需要注意的地方:自反性,对称性,传递性,一致性和谨慎性。
命名的内部类要求独立编译,JVM将其命名为MainClass$InnerClass.class,匿名的内部类命名为MainClass$1.class这些内部类不能脱离上下文关系。
在单例模式中,私有的构造方法阻止了其其它任何类进行实例化。
Java提供了两套用于读写的类,Java.io包中的流用于读写数据字节,Reader和Writer用于处理文本数据。
使用System.in的BufferedInputStream来读取字节,如果要读取文本,一般常用InputStreamReader和BufferedReader。程序运行前system.in和system.out以及system.err关联到了三个流相关的设备上。在处理字符时,需要字符转换器,就是Reader类。
Formatter模仿了C的printf程序,采用的是格式化的代码如”%1$04d%2$f”。但在输出日期时,建议使用DateFormat,因为这样更具有适用性。使用Java.util.Scanner来完成简单的读取任务,Scanner类可以识别Java中的八种类型,该类不提供公用构造器,必须调用静态的create()来或得输入员,输入源是一个File对象、InputStream、String、Readable等。
要读取一个文件,要依次创建FileReader对象和BufferedReader对象。
InputStreamReader和outputStreamWriter类是面向字节流与基本字符Reader之间的桥梁。他们读写字节,同时根据制定的字符编码,实现字节与字符之间的转换。为了防止输出时换行的问题,我们要避免toString方法来返回多行字符串,而是应该采用许多语句输出来输出多行字符串的形式。
在对象的equals方法中,可以对两个对象进行比较。如果我们需要实现自定义比较,需要覆盖这个方法,这个方法一些需要注意的地方:自反性,对称性,传递性,一致性和谨慎性。
命名的内部类要求独立编译,JVM将其命名为MainClass$InnerClass.class,匿名的内部类命名为MainClass$1.class这些内部类不能脱离上下文关系。
在单例模式中,私有的构造方法阻止了其其它任何类进行实例化。
Java提供了两套用于读写的类,Java.io包中的流用于读写数据字节,Reader和Writer用于处理文本数据。
使用System.in的BufferedInputStream来读取字节,如果要读取文本,一般常用InputStreamReader和BufferedReader。程序运行前system.in和system.out以及system.err关联到了三个流相关的设备上。在处理字符时,需要字符转换器,就是Reader类。
Formatter模仿了C的printf程序,采用的是格式化的代码如”%1$04d%2$f”。但在输出日期时,建议使用DateFormat,因为这样更具有适用性。使用Java.util.Scanner来完成简单的读取任务,Scanner类可以识别Java中的八种类型,该类不提供公用构造器,必须调用静态的create()来或得输入员,输入源是一个File对象、InputStream、String、Readable等。
要读取一个文件,要依次创建FileReader对象和BufferedReader对象。
InputStreamReader和outputStreamWriter类是面向字节流与基本字符Reader之间的桥梁。他们读写字节,同时根据制定的字符编码,实现字节与字符之间的转换。为了防止输出时换行的问题,我们要避免toString方法来返回多行字符串,而是应该采用许多语句输出来输出多行字符串的形式。
相关文章推荐
- java面向对象下:JavaXML解析技术
- java 关于中文字的输出 输入 和文件操作(对象序列化)
- Java核心技术笔记——Java的输入输出(2014.04.16~17day36、37)
- Java创建类的对象时遇到的问题1:Scanner输出输入的字符串
- 黑马程序员--java技术--面向对象
- 使用java反射技术完成对象所有属性值的输出
- Java基础(极客)——10、Java面向对象的基本特征之一:封装性
- 使用java面向对象创建动物类并输出动物信息
- Java学习笔记10(面向对象三:接口)
- Java输入输出处理技术2
- Touch_Java 10:输入、输出流
- 黑马程序员_java输入与输出的IO流技术
- JAVA高级视频02_IO输入与输出日记3(02-06到10)
- 使用java反射技术完成对象所有属性值的输出
- 使用java反射技术完成对象所有属性值的输出
- Java输入输出处理技术1
- java调用输入、输出参数为对象的存储过程
- java实现SP00LING假脱机输入输出技术模拟
- 关于一道J笔试或者机试题的Java实现:从键盘输入一串字符,翻转后输出(要求不使用string相关类即对象)
- java 面向对象练习题10