原创 Windows 與 Applet 程序

JAVA AWT 之類的圖形化編程,這邊就不深入研究了 相應的很多圖形化文本框和VB有的,基本Java也都有。

原创 變量與常量

PL/SQL允許我們聲明常量和變量,但是常量和變量必須是在聲明後纔可以使用,向前引用(forward reference)是不允許的。 1、變量聲明 變量可以是任何SQL類型,如CHAR,DATE或NUMBER等,也可以是PL/SQL類型

原创 對象的集合

如果程序只包含固定數量的對象,並且其生命週期都已知,那麼這個程序就實在太簡單了。 通常,你的程序會根據運行時才知道的條件創建新對象。不到運行期,不會知道所需對象 的數量,甚至不知道確切的類型。爲解決這個普遍的編程問題,需要能夠在任意時刻

原创 對象序列化

Java的對象序列化(Object Serialization)將那些實現了 Serializable接口的對象轉換 成一個字節序列,並可以在以後將這個字節序列完全恢復爲原來的對象。這一過程甚至可通 過網絡進行。這意味着序列化機制能自動彌

原创 類型檢查 與Java 多態相結合及反射機制相結合

運行期類型識別(RTTI,run-time type identification)的概念初看起來非常簡單:當你只有 一個指向對象的基類的引用時,RTTI 機制可以讓你找出這個對象確切的類型。   對 RTTI 的需要,揭示了面向對象設

原创 遊標的概念引入(隱式遊標日常常用,只是一個內部的機制而已)

遊標的類型有兩種:隱式和顯式。 PL/SQL會爲所有的SQL數據操作聲明一個隱式的遊標,包括只返回一條記錄的查詢操作。 其實我們在pl/sql中每作一次查詢操作就用到了oracle的隱式的遊標。   此外,我們可以顯示地使用遊標來處理一條

原创 Java I/O系統

對白釀成語言的設計者來說,創建一個好的輸入/輸出(I/O)系統是一項更艱難的任務。 現有的大量不同方案已經說明了這一點。挑戰似乎來自於要涵蓋所有的可能性。不僅存在各 種用於通信的 I/O 源端和接收端(文件、控制檯、網絡鏈接等),而且還

原创 for update 和 for update of 有什麼區別

1 select * from TTable1 for update 鎖定表的所有行,只能讀不能寫 2 select * from TTable1 where pkid = 1 for update 只鎖定pkid=1的行 3 selec

原创 發現問題

單元測試   一個簡單的測試框架     Junit   斷言語法 (這個以後用到再好學習) 既然我們可以使用其它的編程結構來仿真斷言的效用,這表明將斷言添加到 Java 的關鍵之 處在於它們很容易編寫。斷言語句有兩種常用的形式:  

原创 通過繼承來擴展接口

通過繼承,你可以很容易地在接口中添加新的方法聲明,你還可以通過繼承在新接口中組合 數個接口。在兩種情況下,你都可以獲得新的接口,就像在下例中所看到的:   //: c08:HorrorShow.java // Extending an

原创 爲什麼需要內部類?

典型的情況是,內部類繼承自某個類或實現某個接口,內部類的代碼操作創建其的外圍類 的對象。所以你可以認爲內部類提供了某種進入其外圍類的窗口。   內部類必須要回答一個問題是:如果我只是需要一個對接口的引用,爲什麼我不通過外圍 類實現那個接

原创 異常使用指南

你應該在下列情況下使用異常: 1. 在恰當的級別處理問題。(在你知道該如何處理的情況下才捕獲異常)。 2. 解決問題並且重新調用產生異常的方法。 3. 進行少許修補,然後繞過異常發生的地方繼續執行。 4. 用別的數據進行計算,以代

原创 使用 finally進行清理

對於一些代碼,你可能會希望無論try塊中的異常是否拋出,它們都能得到執行。這通常 適用於內存回收(由垃圾回收器完成)之外的情況。爲了達到這個效果,你可以在異常 2 處理程序後面加上finally子句 。完整的異常處理程序看起來像這樣:

原创 內部類,Java特有的

這正是內部類要做的事情,你可以:   1.  用一個單獨的類完整地實現一個控制框架,從而將實現的細節封裝起來。內 部類用來表示解決問題所必需的各種不同的 action()。 2.  內部類能夠輕易的訪問外圍類的任意成員,所以可以避免

原创 異常與錯誤處理

Java 的基本理念是“結構不佳的代碼將不能運行”。   發現錯誤的理想時機是在編譯階段,也就是在你試圖運行程序之前。然而,編譯期間並 不能找出所有的錯誤,餘下的問題必須在運行期間得到解決。這就需要錯誤源能通過某 種方式,把適當的信息傳