Java语言程序基础篇读书笔记<一>

2012年2月27日

主要内容:字符串和文本IO和 关于对象的思考

1、字符串和文本IO

1)限定的(interned):Java虚拟机为了提高效率并节约内存,对具有相同字符串序列的字符串直接量使用同一个实例,这样的实例称为限定的

2)Character字符类包装类、StringBuilder/StringBuffer类

Character类是char的包装类;StringBuilder和StringBuffer比String类更灵活,是动态的,可添加,插入或追加新内容。StringBuffer修改缓冲区的方法是同步,适合于多任务并发访问,而StringBuilder不是,适合于单任务访问。

3)文件类File 获取文件和目录属性,删除和重命名文件

java.io.File包 windows文件路径:C:\book\Welcome.java 而Unix文件路径:/home/book/Welcome.java 屏蔽细节的相对路径Java目录分隔符斜杠/.

如:File file =new File("images/us.gif");

4)PrintWriter写数据Scanner读数据

java.io.PrintWriter output = new java.io.PrintWriter(file);

java.util.Scanner input = new java.util.Scanner(System.in);

Scanner令牌读取方法(token-reading method) 读取分隔符分开的令牌;next() nextLine() nextInt()等

一般分隔符是空格 useDelimiter(String regex)设置分隔符

2、关于对象的思考

1)不可变类(Immutable Class)

。所以数据域都是私有

。没有修改器方法(setter)

。没有一个访问器方法,它会返回一个纸箱可变数据域的引用

2)合约(contract)

从类外可以访问的全部方法和数据域,以及期望这些成员如何行动的描述。类似于UML图

3)组合(composition)和聚集(aggregating)

组合:一对一  实心菱形        聚集:一对多 空心菱形

4)类的设计原则

。内聚性

。一致性

。封装性

。清晰性

。完整性

posted @ 2012-02-27 22:32  菜鸟程序员的奋斗&  阅读(153)  评论(0编辑  收藏  举报