東坡下載:內(nèi)容最豐富最安全的下載站!

幫助|文件類型庫|最新更新|下載分類|排行榜

桌面主題教育相關(guān)素材下載字體下載外語學(xué)習(xí)高考考研建筑圖集高考作文書法字體桌面壁紙CAD圖紙考研素材

首頁硬件驅(qū)動硬件教程 → Thinking In Java 4th(java編程思想第四版) pdf格式高清免費版

Thinking In Java 4th(java編程思想第四版)

Thinking In Java 4th(java編程思想第四版)pdf格式高清免費版

  • 大。1.9M
  • 語言:中文
  • 平臺:WinAll
  • 更新:2015-01-16 10:23
  • 等級:
  • 類型:書集教程
  • 網(wǎng)站:http://californiadebtcollectionlawyers.com
  • 授權(quán):免費軟件
  • 廠商:
  • 產(chǎn)地:國產(chǎn)軟件
好用好玩 50%(0)
坑爹 坑爹 50%(0)
軟件介紹軟件截圖相關(guān)軟件軟件教程網(wǎng)友評論下載地址

相關(guān)推薦: java編程思想第四版pdf

    本節(jié)內(nèi)容小編為大家精選帶來的是pdf格式高清免費版Thinking In Java 4th(java編程思想第四版),該電子版文檔資料共有688頁,該第四版中文版thinking in java內(nèi)容完整,有需要的朋友可以點擊本文下方的下載地址進行下載查閱!

    溫馨提示:

    本文檔為PDF格式文檔,因此需確保在閱讀之前你已經(jīng)安裝了PDF閱讀器,如果尚未安裝閱讀器,建議下載福昕PDF閱讀器或其他PDF閱讀器進行安裝后閱讀。

    Thinking In Java 4th(java編程思想第四版)內(nèi)容節(jié)選

    ……

    2.4 新建數(shù)據(jù)類型:類

    如果說一切東西都是對象,那么用什么決定一個“類”(Class)的外觀與行為呢?換句話說,是什么建立起了一個對象的“類型”(Type)呢?大家可能猜想有一個名為“type”的關(guān)鍵字。但從歷史看來,大多數(shù)面向?qū)ο蟮恼Z言都用關(guān)鍵字“class”表達這樣一個意思:“我準備告訴你對象一種新類型的外觀”。class 關(guān)鍵字太常用了,以至于本書許多地方并沒有用粗體字或雙引號加以強調(diào)。在這個關(guān)鍵字的后面,應(yīng)該跟隨新數(shù)據(jù)類型的名稱。例如:

    class ATypeName {/*類主體置于這里}

    這樣就引入了一種新類型,接下來便可用new 創(chuàng)建這種類型的一個新對象:

    ATypeName a = new ATypeName();

    在ATypeName 里,類主體只由一條注釋構(gòu)成(星號和斜杠以及其中的內(nèi)容,本章后面還會詳細講述),所以并不能對它做太多的事情。事實上,除非為其定義了某些方法,否則根本不能指示它做任何事情。

    2.4.1 字段和方法

    定義一個類時(我們在 Java 里的全部工作就是定義類、制作那些類的對象以及將消息發(fā)給那些對象),可在自己的類里設(shè)置兩種類型的元素:數(shù)據(jù)成員(有時也叫“字段”)以及成員函數(shù)(通常叫“方法”)。其中,數(shù)據(jù)成員是一種對象(通過它的句柄與其通信),可以為任何類型。它也可以是主類型(并不是句柄)之一。如果是指向?qū)ο蟮囊粋句柄,則必須初始化那個句柄,用一種名為“構(gòu)建器”(第4 章會對此詳述)的特殊函數(shù)將其與一個實際對象連接起來(就象早先看到的那樣,使用new關(guān)鍵字)。但若是一種主類型,則可在類定義位置直接初始化(正如后面會看到的那樣,句柄亦可在定義位置初始化)。

    ……

    6. 菜單

    為菜單處理事件看起來受益于Java 1.1 版的事件模型,但Java 生成菜單的方法常常麻煩并且需要一些手工

    編寫代碼。生成菜單的正確方法看起來像資源而不是一些代碼。請牢牢記住編程工具會廣泛地為我們處理創(chuàng)

    建的菜單,因此這可以減少我們的痛苦(只要它們會同樣處理維護任務(wù)。。另外,我們將發(fā)現(xiàn)菜單不支持

    并且將導(dǎo)致混亂的事件:菜單項使用ActionListeners(動作接收器),但復(fù)選框菜單項使用 ItemListeners

    (項目接收器)。菜單對象同樣能支持ActionListeners(動作接收器),但通常不那么有用。一般來說,

    我們會附加接收器到每個菜單項或復(fù)選框菜單項,但下面的例子(對先前例子的修改)演示了一個聯(lián)合捕捉

    多個菜單組件到一個單獨的接收器類的方法。正像我們將看到的,它或許不值得為這而激烈地爭論。

    //: MenuNew.java

    // Menus in Java 1.1

    import java.awt.*;

    import java.awt.event.*;

    public class MenuNew extends Frame {

    String[] flavors = { "Chocolate", "Strawberry",

    "Vanilla Fudge Swirl", "Mint Chip",

    "Mocha Almond Fudge", "Rum Raisin",

    "Praline Cream", "Mud Pie" };

    TextField t = new TextField("No flavor", 30);

    MenuBar mb1 = new MenuBar();

    Menu f = new Menu("File");

    Menu m = new Menu("Flavors");

    Menu s = new Menu("Safety");

    // Alternative approach:

    CheckboxMenuItem[] safety = {

    new CheckboxMenuItem("Guard"),

    new CheckboxMenuItem("Hide")

    };

    MenuItem[] file = {

    // No menu shortcut:

    new MenuItem("Open"),

    // Adding a menu shortcut is very simple:

    new MenuItem("Exit",

    new MenuShortcut(KeyEvent.VK_E))

    };

    // A second menu bar to swap to:

    MenuBar mb2 = new MenuBar();

    Menu fooBar = new Menu("fooBar");

    MenuItem[] other = {

    new MenuItem("Foo"),

    new MenuItem("Bar"),

    new MenuItem("Baz"),

    };

    // Initialization code:

    {

    ML ml = new ML();

    ……

    3. 程序列表的存取

    接下來的一系列方法是簡單的訪問器:directory()、filename()(注意方法可能與字段有相同的拼寫和大小寫形式)和 contents()。而 hasFile()用于指出這個對象是否包含了一個文件(很快就會知道為什么需要這個)。

    最后三個方法致力于將這個代碼列表寫進一個文件——要么通過writePacked()寫入一個打包文件,要么通過writeFile()寫入一個Java 源碼文件。writePacked()需要的唯一東西就是 DataOutputStream,它是在別的地方打開的,代表著準備寫入的文件。它先把頭信息置入第一行,再調(diào)用writeBytes()將contents(內(nèi)容)寫成一種“通用”格式。

    準備寫Java 源碼文件時,必須先把文件建好。這是用 IO.psOpen()實現(xiàn)的。我們需要向它傳遞一個File 對象,其中不僅包含了文件名,也包含了路徑信息。但現(xiàn)在的問題是:這個路徑實際存在嗎?用戶可能決定將所有源碼目錄都置入一個完全不同的子目錄,那個目錄可能是尚不存在的。所以在正式寫每個文件之前,都要調(diào)用File.mkdirs()方法,建好我們想向其中寫入文件的目錄路徑。它可一次性建好整個路徑。

    4. 整套列表的包容

    以子目錄的形式組織代碼列表是非常方便的,盡管這要求先在內(nèi)存中建好整套列表。之所以要這樣做,還有另一個很有說服力的原因:為了構(gòu)建更“健康”的系統(tǒng)。也就是說,在創(chuàng)建代碼列表的每個子目錄時,都會加入一個額外的文件,它的名字包含了那個目錄內(nèi)應(yīng)有的文件數(shù)目。

    DirMap類可幫助我們實現(xiàn)這一效果,并有效地演示了一個“多重映射”的概述。這是通過一個散列表(Hashtable)實現(xiàn)的,它的“鍵”是準備創(chuàng)建的子目錄,而“值”是包含了那個特定目錄中的SourceCodeFile 對象的Vector 對象。所以,我們在這兒并不是將一個“鍵”映射(或?qū)?yīng))到一個值,而是通過對應(yīng)的Vector,將一個鍵“多重映射”到一系列值。盡管這聽起來似乎很復(fù)雜,但具體實現(xiàn)時卻是非常簡單和直接的。大家可以看到,DirMap類的大多數(shù)代碼都與向文件中的寫入有關(guān),而非與“多重映射”有關(guān)。與它有關(guān)的代碼僅極少數(shù)而已。

    可通過兩種方式建立一個DirMap(目錄映射或?qū)?yīng))關(guān)系:默認構(gòu)建器假定我們希望目錄從當前位置向下展開,而另一個構(gòu)建器讓我們?yōu)槠鹗寄夸浿付ㄒ粋備用的“絕對”路徑。

    add()方法是一個采取的行動比較密集的場所。首先將directory()從我們想添加的SourceCodeFile 里提取出來,然后檢查散列表(Hashtable),看看其中是否已經(jīng)包含了那個鍵。如果沒有,就向散列表加入一個新的Vector,并將它同那個鍵關(guān)聯(lián)到一起。到這時,不管采取的是什么途徑,Vector 都已經(jīng)就位了,可以將它提取出來,以便添加SourceCodeFile。由于 Vector可象這樣同散列表方便地合并到一起,所以我們從兩方面都能感覺得非常方便。

    ……

    Thinking In Java 4th(java編程思想第四版)相關(guān)內(nèi)容小編就為大家介紹到這里了,更多pdf格式文檔資料下載,敬請關(guān)注東坡下載站!

    PC官方
    安卓官方手機版
    IOS官方手機版

    Thinking In Java 4th(java編程思想第四版)截圖

    下載地址

    Thinking In Java 4th(java編程思想第四版) pdf格式高清免費版

    熱門評論
    最新評論
    發(fā)表評論 查看所有評論(0)
    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字數(shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)

    編輯推薦

    報錯

    請簡要描述您遇到的錯誤,我們將盡快予以修正。

    轉(zhuǎn)帖到論壇
    輪壇轉(zhuǎn)帖HTML方式

    輪壇轉(zhuǎn)帖UBB方式