Java初学者:字符串序列化与字符编码解析
需积分: 10 144 浏览量
更新于2024-09-16
收藏 60KB DOC 举报
"达内学习笔记,这是一份适合Java初学者的学习资料,记录了作者在达内学习期间关于字符串序列化、字符编码、字符流、对象序列化等核心概念的整理。"
这篇笔记主要涉及以下几个Java编程中的关键知识点:
1. **字符串的序列化与字符编码**
- 字符串在Java中本质上是`char[]`数组,将其转换为`byte[]`的过程即为字符串的序列化。
- UTF-16BE是一种字节序为大端的编码方式,每个字符由两个字节表示,最多可以表示65535个不同的字符。
- UTF-8是一种变长编码,英文字符占1个字节,中文字符通常占3个字节。
- GBK是中国的国家标准,它以1个字节表示英文,2个字节表示汉字,支持大量中日英韩字符,GB2312是其简体中文部分。
- ISO-8859-1主要用于西欧字符,用1个字节表示字符。
2. **Java中的文本和文本文件**
- Java中的文本是以16位无符号整数(Unicode编码)表示的字符。
- 文件是按字节序列存储的数据,文本文件则是按照特定编码将字符序列化后的字节序列。
3. **字符流(Reader, Writer)**
- 字符流以字符为单位进行读写操作,如`Reader`和`Writer`接口。
- 字符流在底层仍然基于字节流进行数据传输,通过`InputStreamReader`和`OutputStreamWriter`将字节流与特定字符编码进行转换。
4. **缓冲字符流**
- `BufferedReader`、`BufferedWriter`和`PrintWriter`提供了字符读写功能的增强,如缓冲机制提高效率。
5. **对象序列化与反序列化**
- 对象序列化是将对象转换为字节序列的过程,用于持久化内存中的对象。
- 反序列化是将字节序列还原为对象的过程。
- 对象序列化使用`ObjectOutputStream`,反序列化使用`ObjectInputStream`。
- 对象序列化时,对象所属的类需实现`Serializable`接口,即使该接口没有方法,仅作为可序列化的标识。
- JavaBean通常应实现`Serializable`接口,以便于数据持久化和跨网络传输。
这些知识点对于理解和操作Java中的字符串处理、文件读写以及对象持久化至关重要,是Java开发者必备的基础知识。
2010-05-21 上传
2014-06-22 上传
2009-12-28 上传
2009-03-29 上传
2012-10-03 上传
2011-12-01 上传
2022-07-14 上传
2009-08-23 上传
2010-05-28 上传
jia3gege
- 粉丝: 0
- 资源: 3
最新资源
- 关于运动会分数系统的代码
- 实习日记_企业信息管理
- mt4编程参考.doc
- Struts快速学习指南.pdf
- NS精美中文手册(纯中文)
- Windows 2000+Apache+MySql+PHP3+PHP4+PERL安装使用小结
- SAP R/3系统中ABAP/4编程概述
- 全国大学身生电子设计大赛试题
- GNU make中文手册
- OpenBSD PF 中文手册.pdf
- 代码逆向乱谈之导引(入门教程)
- [Linux英文原版图书系列].Slackware.Linux.Essentials.pdf
- c++ Primer 第四版 中文版 练习题
- windows form下的用户登录程序如何写?
- Core python programming
- 深入浅出Struts 2