thinking in java(VIII)--containers,exceptions,I/O,RTTI

对象群的最高效能选择依然是传统的array
处于效率考量,java会在运行期进行边界检查
容器类仅能持有reference,持有对象均为object类别,这里有一个缺憾,即容器中元素的型别未定
而array可以产生直接持有基本型别数值的array,因而array分为primitive array和object array
collection表示一组各自独立的元素,map表示一群成对的key-value对象,两者的继承体系下各自有多种具体实现形式
容器内元素大小的比较可以通过实现comparable或者comparator完成
至于vector。。。不推荐使用




Java的基本哲学:结构不佳的程序无法执行
因而有了java的异常机制
异常对象的型别和其内含信息被用来表示错误的相关信息
Java中的exception均采用termination机制,即一旦产生异常即终止整个程序
撰写自己的异常类一定得继承自某个既有的异常型别


总体而言,感觉Java的I/O有些过于复杂而让人蛋疼了。。。
就写一写一些典型运用吧
1.具备缓冲功能的输入文件
  BufferedReader
2.从内存取得输入
  StringReader
3.从内存取得格式化输入
  DataInputStream
4.输出至文件
  PrintWriter
5.数据的存储和回复
  DataOutputStream




另外还有两个不错的功能:Serialization和Tokenizing


RTTI(run time type identification)
传统机制 假设你在编译期和执行期拥有所有型别信息
reflection机制允许你在执行期间找出和class相关的信息
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值