- 浏览: 61955 次
- 性别:
- 来自: 北京
文章分类
最新评论
1. 代码就是设计
2. 查看Path
Windows: path
Unix: echo $PATH
3. 查看具体变量
Windows: echo %JAVA_HOME%
Unix: echo $JAVA_HOME
4. 断言: 第一个参数等于第二个参数
5. 保证系统中没有重复的代码
6. 不要把成员变量直接暴露给其他对象
7. 用类常量替换字符串或者数字
8. 消除所有的警告
9. 时刻保持代码干净
10. 用更有表现力的代码替代注释
11. 一个类是单职责
12. 用编译器来重构代码
13. 以较小的步伐,增量构件系统的测试和代码。如果发现问题,放弃导致问题的增量代码,以更小的步伐重新开始
14. 工具方法一般设置为static
Collections.sort(list): 该list必须实现Comparable接口
15. 使用接口提供抽象层,有助于消除重复
设计系统,通过扩展来拥抱变化,不要通过修改来适应变化
List<Grade> grades = new ArrayList<Grade>(); 定义为List接口,容易扩展
面向对象的集合类优于数组
Arrays.equals(a, b) 比较两个数组的内容,而不是内存位置
返回分隔符解析之后的List
private List<String> split(String fullName) { return new ArrayList<String>(Arrays.asList(fullName.split(" "))); } 或者 private List<String> split(String fullName) { List<String> results = new ArrayList<String>(); for (String name : fullName.split(" ")) results.add(name); return results; }
16. 避免传递异常,但也不要创建空catch块
不要在finally块中调用return语句,这样可能会吃掉catch抛出的异常
17. Object中的equals比较引用 - 比较接收者和参数对象的内存位置
如果子类没有提供equals实现,那么使用缺省的比较内存位置的equals实现
// 改写equals和hashCode public boolean equals(Object object) { if (object == null) return false; if (this.getClass() != object.getClass()) return false; Course that = (Course) object; return this.department.equals(that.department) && this.number.equals(that.number); } // 哈希值运算通常用质数 public int hashCode() { final int hashMultiplier = 41; int result = 7; result = result * hashMultiplier + department.hashCode(); result = result * hashMultiplier + number.hashCode(); return result; }
18. I/O
Reader/Writer: 字符流,处理文本类型
Input/Output: 字节流,处理图像或者字节码
InputStreamReader: 将读入的字节装换成字符
OutputStreamWriter: 将字符转换为单字节
19. 序列化
Class Session implements java.io.Serializable { private transient List<Student> students = new ArrayList<Student>(); //瞬时对象 }
如果序列化之后再改动Class,再次存入文件,将会出现异常,建议:
19.1 将序列化的使用最小化
19.2 尽可能使用transient的成员变量
19.3 使用serialVersionUID
20. 内部类
静态内部类(static nested): 不能调用外部类的实例变量
内部类(inner): 可以访问外部类的实例变量
匿名内部类: 没有构造函数,但可以用实例初始化段来替代
21. 打开断言: java -ea MainClass
22. Jar工具
创建Jar: jar cvf sis.jar *
c-create v-verbose f-filename
解压Jar: jar xvf sis.jar
加入MANIFEST.MF: jar cvmf main.mf sis.jar *
发表评论
-
Effective Java
2009-09-04 11:45 8201. 考虑用静态工厂方法代替构造函数 静态工厂方法优点: ... -
Java经典实例(第二版)
2009-06-01 16:33 39391. 获取环境变量 System.getenv(" ... -
Java线程(第三版)
2009-04-03 14:09 29501. Thread生命周期 // 创建Thread ext ... -
Java编程思想(第四版) - 第22章 图形化用户界面
2009-04-03 13:14 781GUI -
Java编程思想(第四版) - 第21章 并发
2009-04-03 11:43 981并发 -
Java编程思想(第四版) - 第20章 注解
2009-04-03 11:43 711注解 -
Java编程思想(第四版) - 第19章 枚举类型
2009-04-03 11:42 835枚举 -
Java编程思想(第四版) - 第18章 Java I/O系统
2009-04-03 11:41 755IO -
Java编程思想(第四版) - 第17章 容器深入研究
2009-04-03 11:40 831容器 -
Java编程思想(第四版) - 第16章 数组
2009-04-03 11:40 712数组 -
Java编程思想(第四版) - 第15章 泛型
2009-04-03 11:39 625泛型 -
Java编程思想(第四版) - 第14章 类型信息
2009-04-03 11:38 919类型信息 -
Java编程思想(第四版) - 第13章 字符串
2009-04-03 11:37 685字符串 -
Java编程思想(第四版) - 第12章 通过异常处理错误
2009-04-03 11:36 709异常 -
Java编程思想(第四版) - 第11章 持有对象
2009-04-03 11:31 798持有对象 -
Java编程思想(第四版) - 第10章 内部类
2009-04-03 11:30 674内部类 -
Java编程思想(第四版) - 第9章 接口
2009-04-03 11:29 679接口 -
Java编程思想(第四版) - 第8章 多态
2009-04-03 11:29 610多态 -
Java编程思想(第四版) - 第7章 复用类
2009-04-03 11:28 630复用类 -
Java编程思想(第四版) - 第6章 访问权限控制
2009-04-03 11:26 7311. public protectd package priv ...
相关推荐
Agile Java Crafting Code with Test-Driven Development英文版,包含pdf和chm格式,pdf格式的目录缩进和超连接有问题,所以附上了改造过的chm文件,以便有心人可以修改目录。
Agile Java 中文版 优秀的入门书籍之一
agile java 每一章 课程 的 源码;
Agile Java Example Code
Agile Java 通俗易懂, 适合初学者入门教材.
资源名称:Agile Java中文版:测试驱动开发的编程技术内容简介:本书将当前流行的敏捷开发方法融入到了Java语言的实践中,给了您学习并掌握Java 5.0、面向对象方法的机会,同时您还将学习测试驱动开发方法。...
agile Java课后习题代码
<<agileJava>> 这本书的程序代码 非常不错的一本书
属于agile java课本及课后练习代码,但请好好利用,而非看过一遍就完了。只有认真的学习之后才能真的理解本书的所带来的对于你开发上的帮助。谨记,要自己多多的动手!
Agile Java 高清中文版.rar 很不错的文档了
agile java(测试驱动开发的编程技术)
( 2 agile java.pdf chm转pdf字体有点小
Agile Java 高清中文版 这本书一大特点是以单元测试和TDD来贯穿全书的,在教你Java各种重要的基础知识的过程中,潜移默化的影响你的编程思维走向敏捷,走向TDD。这本书成书,以JDK5.0的语法为基础讲解,要学习JDK...
值得一看的好书Agile Java Crafting Code with Test-Driven Development.chm
Agile Java Development with Spring, Hibernate and Eclipse 这个是代码,书也在我的资源里。
Agile Java Crafting Code with Test-Driven Development.chm
agile java-驱动测试开发的编程技术-带超详细书签目录.pdf 本资源转载自网络,供学习研究之用,如用于商业用途,请购买正版,如有侵权,请联系我或CSDN删除。
Spring Hibernate Data Modeling REST and TDD Agile Java Design and Development 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除