在我看來,編程效率提升後影響最大的就是Web。網絡程序設計以前非常困難,而Java使這個問題迎刃而解(而且Java也在不斷地進步,使解決這類問題變得越來越容易)。
隨着我們網上通信越來越頻繁,令人震驚的事情會慢慢發生,而且它們令人吃驚的程度絕不亞於當初工業革命給人帶來的震憾。
在各個方面:創建程序;按計劃編制程序;構造用户界面,使程序能與用户溝通;在不同類型的機器上運行程序;以及方便地編寫程序,使其能通過因特網通信——Java 提高了人與人之間的“通信帶寬”。
1.前提
曾經一次講述了太多的問題,但得到的教訓是:假如包括了大量新特性,就需要對它們全部作出解釋,而這特別容易加深學生們的混淆。使這本書一次儘可能地少涉及一些問題。講述一種語言特性,或者只講述少數幾個相互關聯的特性。這樣一來,讀者在轉向下一“主題時,就能更容易地消化前面學到的知識。
(1)第1章:對象入門
這一章是對面向對象的程序設計(00P)的一個綜述,其中包括對“什麼是對象”之類的基本問題的回答,並講述了接口與實現、抽象與封裝、消息與函數、繼承與合成以及非常重要的多形性的概念。
(2) 第2章:一切都是對象
着手寫自己的第一個Java程序的地方,所以必須對一些基本概念作出解釋,其中包括對象“句柄”的概念;怎樣創建一個對象;對基本數據類型和數組的一個介紹;作用域以及垃圾收集器清除對象的方式;如何將Java中的所有東西都歸為一種新數據類型(類),以及如何創建自己的類;函數、自變量以及返回值:名字的可見度以及使用來自其他庫的組件; static 關鍵字:註釋和嵌入文檔等
(3) 第3章:控制程序流程
本章開始介紹起源於C和C++,由Java繼承的所有運算符。除此以外,還要學習運算符一一些不易使人注意的問題,以及涉及造型、升遷以及優先次序的問題。
(4)第4章:初始化和清除
本章開始介紹構建器,它的作用是擔保初始化的正確實現。對構建器的定義要涉及函數過載的概念( 因為可能同時有幾個構建器)。隨後要討論的是清除過程,它並非肯定如想象的那麼簡單。
(5)第5章:隱藏實現過程
本章要探討將代碼封裝到一起的方式,以及在庫的其他部分隱藏時,為什麼仍有一部分處於暴露狀態。首先要討論的是package和import關鍵字,它們的作用是進行文件級的封裝(打包)操作,並允許我們構建由類構成的庫(類庫)。
(6) 第6章:類再生
繼承的概念是幾乎所有00P語言中都佔有重要的地位。它是對現有類加以利用,併為其添加新功能的一種有效途徑(同時可以修改它,這是第7章的主題)。通過繼承來重複使用原有的代碼時(再生),一般需要保持“基礎類”不變,只是將這兒或那兒的東西串聯起來,以達到預期的效果。
(7) 第7章:多形性
若由你自己來幹,可能要花9個月的時間才能發現和理解多形性的問題,這特性實際是00P一個重要的基礎。通過一-些小的、簡單的例子,讀者可知道如何通過繼承來創建一系列類型,並通過它們共有的基礎類對那個系列中的對象進行操作。
(8) 第8章:對象的容納
對一個非常簡單的程序來説,它可能只擁有一個固定數量的對象,而且對象的“生存時間”或者“存在時間”是已知的。但是通常,我們的程序會在不定的時間創建新對象,只有在程序運行時才可瞭解到它們的詳情。此外,除非進入運行期,否則無法知道所需對象的數量,甚至無法得知它們]確切的類型。
(9) 第9章:違例差錯控制
Java最基本的設計宗旨之一便是組織錯誤的代碼不會真的運行起來。編譯器會盡可能捕獲問題。但某些情況下,除非進入運行期,否則問題是不會被發現的。這些問題要麼屬於編程錯誤,要麼則是些 自然的出錯狀況,它們只有在作為程序正常運行的一部分時才會成立。Java 為此提供了“違例控制”機制,用於控制程序運行時產生的一切問題。
(10) 第10章: Java I0系統
理論上,我們可將任何程序分割為三部分:輸入、處理和輸出。這意味着I0 (輸入/輸出)是所有程序最為關鍵的部分。在這一章中, 大家將學習Java為此提供的各種類,如何用它們讀寫文件、內存塊以及控制枱等。
(11) 第11章:運行期類型鑑定
若只有指向基礎類的一一個句柄, Java的運行期類型標籤定(RTTI) 使我們能獲知個對象 的準確類型是什麼。一般情況下,我們需要有意忽略一個對象的準確類型,讓Java的動態綁定機制(多形性)為那一類型實現正確的行為。但在某些場合下,對於只有一個基礎句柄的對象,我們仍然特別有必要了解它的準確類型是什麼。擁有這個資料後,通常可以更有效地執行一次特殊情況下的操作。
(12) 第12章:傳遞和返回對象
由於我們在Java中同對象溝通的唯一途徑是 “句柄”,所以將對象傳遞到一一個 函數里以及從那個函數返回個對象的概念就顯得非常有趣了。
(13) 第13章:創建窗口和程序片
Java配套提供了“抽象Windows工具包”(AWT) 。這實際是一系列類的集合,能以一種可移植的形式解決視窗操縱問題。這些窗口化程序既可以程序片的形式出現,亦可作為獨立的應用程序使用。本章將向大家介紹AWT以及網上程序片的創建過程。我們也會探討AWT的優缺點以及Java 1.1 在GUI方面的一些改進。
(14) 第14章:多線程
Java提供了一套內建的機制,可提供對多個併發子任務的支持,我們稱其為“線程”。這線程均在單一-的程序內運行。除非機器安裝了多個處理器,否則這就是多個子任務的唯一運行方式。
(15) 第15章網絡編程
開始編寫網絡應用時,就會發現所有Java特性和庫彷彿早已串聯到了一起。本章將探討如何通過因特網通信,以及Java用以輔助此類編程的一一些類。
(16) 第16章設計範式
本章將討論非常重要、但同時也是非傳統的“範式”程序設計概念。大家會學習設計進展過程的一一個例子。首先是最初的方案,然後經歷各種程序邏輯,將方案不斷改革為更恰當的設計。
(17)第17章項目
本章包括了一系列項目,它們要麼以本書前面講述的內容為基礎,要麼對以前各章進行了一番擴展。這些項目顯然是書中最複雜的,它們有效演示了新技術和類庫的應用。
【來源:數碼雅】
聲明:轉載此文是出於傳遞更多信息之目的。若有來源標註錯誤或侵犯了您的合法權益,請作者持權屬證明與本網聯繫,我們將及時更正、刪除,謝謝。 郵箱地址:[email protected]