不知道這裡該說些什麼。真想跳過去。因為建立工作區間、工程和新建文件實在沒什麼說的。
還是把上次說的 Classpath 的問題再說得細致一點。JCreator 不可以像 Eclipse 那樣為每個 Project 都配置獨立的 classpath,Eclipse 是為每個 Project 配備一個 .classpath 文件保存設置,但 JC 不能,今天我在工程目錄下找過了,沒有發現有關於 classpath 的描述。
--------------------------------------------------------------------------------
Javadocs:
寫程序的時候免不了要查詢點什麼東東,在 JCreator 中調出 JDK docs 的方法是按 "Ctrl+F1"然後搜索,相信這個大家都很清楚。但不知道另一個方法有多少人試過。比如說我要查詢 java.lang.System 的文檔,那可以這樣做就OK了:在寫程序的時候選中 System 這個詞,再按 "Ctrl+F1",然後雙手合十,祈禱 JC 不跳出那個對話框而直接幫你把 System 的文檔調出來吧,我是特別喜歡用這個方法來查看文檔的。
上次在別人的一個博客裡介紹這個功能時,作者說這個功能很好,而 Eclipse 沒有這個功能,話是這麼說沒錯。可為什麼 Eclipse 沒有這個功能那也是因為人家做得更好,把鼠標移過去再按 "F2",不僅可以查看 javadoc,自己寫的方法也可以看注釋的,可是 JC 卻不能查看自己寫的類/方法的所標上的文檔,或者是我還沒把環境配置好吧。
--------------------------------------------------------------------------------
Add comments for your program:
為程序寫注釋是一個相當好的習慣,而 JAVA 的兩類注釋 JCreator 都提供了支持。普通注釋的增加沒什麼好說的,這裡說的是為程序增加 javadoc:“/** */”。
這裡面的注釋我是這樣增加的: 先在要注釋的方法/類/數據的上面敲上“/**/”,然後再按方向鍵“←”,接著“回車”,然後就有一種說不出的舒服。(而據我所知,Eclipse 好像還不能這樣搞,不過可能它有更好的辦法,哪位大哥知道的話麻煩說一下哦)當然,這個方法是當你的注釋有多行的時候才這麼做的,要是注釋只有一行的話還是要自己把“/** */”都敲上。
--------------------------------------------------------------------------------
快速寫程序_1:
這一小段要說的是如何讓 JCreator 自動幫你增加一些非技術性的東西的一點點技巧,在這裡我自己還有一些不懂的地方,也許,相互的交流對彼此的進步都會更快點,哪裡我不知而你知道的,就說一下。
在新建完一個工程後,不知道大家往裡面增加新的類的時候是怎麼增加的。如果用的是選擇菜單裡的 File -> New ->file 的話,那就說明你的方法(暫記為方法①)不夠好了,呵呵,且聽我慢慢道來。
一般來說,我們會在工程目錄下再新建幾個目錄來將程序組織成 package, 比如說我喜歡新建文件夾"cn",在它下面再建"liltos",最後在"liltos"的下面建一些容易記的文件夾,像寫反射的程序時就建一個叫"reflect"的文件夾,像這樣組織成一個樹形結構。如果用方法①來新建 JAVA 程序的話,那豈不是每次都要對程序進行重定位?
而我的方法是,點擊工程目錄下的"src"的右鍵,Add -> new folder 進行文件夾的新建,每個文件夾的子類都是如此,而新建一個 JAVA 程序的時候,則是 Add -> new Class ,當然,是在你的子文件夾的下面。看一下出來的對話框中,Location 是不是已經幫你寫好了呢?還有 package 那一項也幫你搞定了。一起可以搞定的還有 Superclass 以及修飾符和一些方法。
看左邊的那幾項,分別是“Class settings...Implement Interfaces...Add Method...Add Members”,在選擇實現的接口那,按"Ctrl"進行多個接口的選擇。增加成員方法和成員數據時,在輸入完名稱、類型等等時,每增加一個成員,就要點擊一次右邊那個"Add"按鈕,方法的選擇同樣還有修飾符的選擇。
這裡我的一個問題:
增加的一個方法,在程序裡面的注釋,很多空的行,個人感覺影響了視覺,因為我個人比較喜歡緊湊的注釋風格,於是每次都是手動刪除,不知道可不可以在哪個地方進行設置讓它把其中的空行刪除呢?
再補充一個剛剛做的實驗:在同一個文件夾下新建兩個類,它們之間相互引用,即
class A { B b; }
class B { A a; }
在這種情況下,你分別編譯兩個程序是通不過的,有一個方法是編譯整個工程,但這顯然不是一個好方法,一個相對比較好的方法是,在左邊 file view 的那裡右鍵點擊兩個程序所在的文件夾,然後 compile folder. 於是,順利通過編譯。
--------------------------------------------------------------------------------
快速寫程序_2:
對於每一個屬性的 get/set 方法的書寫很讓人覺得沒意思,最煩的就是寫這樣的東西,一點技術含量都沒有!作為一個功能相對來說還完善的開發工具,怎麼可能不對這個進行支持呢?
當寫完了各個 field 的時候,按照這個方法可以完成上述操作。Tools -> Insert Bean Methods. 上面是選擇要進行插入的某個類,下面是選擇需要插入哪些方法,除了上面所說的 get 和 set, 還有其它的一些方法,包括:toString, Constructor, Copy Constructor, 還有一個我不知道是作什麼用的 insert into clipboard,放到剪切板裡干什麼啊?可選項包括:Insert Method as Single Line, Group Set and Get Methods,還有 Exceptions,異常確實沒什麼必要,如果這都會有異常的話,那這程序沒法寫了。
這裡有一個東西是我以前寫過的,用 JCreator 生成的 toString() 方法比較有趣,可以試試 ^_^
而在 Tools 菜單的其它選項中,還有“character encoding...implement interfaces...file splitter...version control”,第一個和最後一個我都沒用過,估計要等到以後工作的時候才會接觸它們了。沒用過自然也就沒法說了。
這裡我也有一個問題:
我記得以前我增加 get/set 方法時,它會自動幫我把方法體也寫好,可現在卻不行了,生成的方法都是抽象方法,哪位高手可以不吝賜教嗎?