置顶随笔
1 public class Order {
2
3 private String name;
4 //
5 private Set<OrderLine> orderLines = new HashSet<OrderLine>();
6
7 public String getName() {
8 return name;
9 }
10
11 public void setName(String name) {
12 this.name = name;
13 }
14
15 /**
16 * 因为这是一个domain对象,贯穿你整个项目,不知你是否在意过这样的设计。
17 * 这样的设计对你是否有用呢?
18 * 用户:表示API调用者。
19 */
20
21 public Set<OrderLine> getOrderLines() {
22 /*
23 * 1.防止用户任意修改订单行的内容,强制要求用户使用当前类提供的API修改订单行
24 * 2.getOrderLines()绝对不为null,有可能getOrderLines().isEmpty()为true
25 * 用在你的程序中不会出现if(getOrderLines() == null && getOrderLines().isEmpty()),
26 * 只会出现if(getOrderLines().isEmpty())
27 */
28 return Collections.unmodifiableSet(orderLines);
29 }
30
31 //-----------------------提供API修改Order by OrderLine----------------------------//
32 public void addOrderLine(OrderLine orderLine) {
33 //
34 orderLines.add(orderLine);
35 }
36
37 public void removeOrderLine(OrderLine orderLine) {
38 //
39 }
40 //-----------------------提供API修改Order by OrderLine----------------------------//
41
42 public void setOrderLines(Set<OrderLine> orderLines) {
43 // this.orderLines = orderLines;
44 // 为什么没有向上面来做,是因为如果是这样赋值的话那么两个对象就是同一个引用了。
45 // 用户修改orderLines,this.orderLines也同样会被修改。
46 // 而提供这个类期望用户通过该类提供的接口来修改orderLines。
47 orderLines.addAll(orderLines);
48 }
49
50 }
jdoc2chm是一个转换javadoc至CHM文件的工具,支持JDK7的Javadoc转换。
无论你在工作中或者在学习中,手上有一个良好易用的帮助文件都会给你带来无限的方便。你无需要把什么东西都记在大脑里面,你只需要能够熟练的使用各种技术的提供的帮助文档,这样你的工作和学习都会十分轻松。
在你不明白或困惑的时候你应该阅读官方提供的文档,也许答案就在其中。
类似jdoc2chm的工具网上也有许多,这次作者编写该工具的主要目的是为了支持JDK7所生成的Javadoc(JDK7还未正式发布,同样也是为了迎接JDK7的到来)。JDK7 Oracle官方提供的Javadoc与前面的版本格式都有所改变,导致前面所有的jdoc2chm工具都不能正确
的将JDK7的Javadoc转换为CHM。
jdoc2chm是免费开源的一个项目。使用非常简单。
首先你要到这里去下载jdoc2chm的发布包。
你可以通过下面的地址获取jdoc2chm的源码。
下面赋上JDK7的CHM帮助文档和效果图。
下载