置頂隨筆
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幫助文檔和效果圖。
下載