<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    I want to fly higher
    programming Explorer
    posts - 114,comments - 263,trackbacks - 0

         很多人在初學Java的時候,都要配置環境變量。在配置CLASSPATH的時候,都會加上一個當前目錄.,還有兩個jar:dt.jar和tools.jar。其實好多人都不了解這兩個jar的作用,尤其是dt.jar。網上的大部分解釋是這樣的:dt.jar是關于運行環境的類庫,主要是swing的包;tools.jar是關于一些工具的類庫。對于后者我贊同,tools.jar中主要是jdk工具,包括javac,java,javap,javadoc等。javac,java,javadoc,很多都熟悉。javap,是java printer的縮寫,是jdk自帶的一個反編譯工具。不過把dt.jar解釋成關于運行環境的類庫,我是百思不得其解。所謂的運行環境是什么?難道是JRE?本文也希望高手可以給我一個解釋。下面是我自己整理的關于dt.jar的資料:

         首先看一下SUN對于dt.jar的定義:Also includes dt.jar, the DesignTime archive of BeanInfo files that tell interactive development environments (IDE's) how to display the Java components and how to let the developer customize them for the application。中文翻譯過來就是:dt.jar是BeanInfo文件的DesignTime歸檔,BeanInfo文件用來告訴集成開發環境(IDE)如何顯示Java組件還有如何讓開發人員根據應用程序自定義它們。這段文字中提到了幾個關鍵字:DesignTime,BeanInfo,IDE,Java components。其實dt.jar就是DesignTime Archive的縮寫。那么何為DesignTime。

        何為DesignTime?翻譯過來就是設計時。其實了解JavaBean的人都知道design time和runtime(運行時)這兩個術語的含義。設計時(DesignTIme)是指在開發環境中通過添加控件,設置控件或窗體屬性等方法,建立應用程序的時間。與此相對應的運行時(RunTIme)是指可以象用戶那樣與應用程序交互作用的時間。那么現在再理解一下上面的翻譯,其實dt.jar包含了swing控件中的BeanInfo,而IDE的GUI Designer需要這些信息。那讓我們看一下dt.jar中到底有什么?下面是一張dt.jar下面的內容截圖:

        從上面的截圖可以看出,dt.jar中全部是Swing組件的BeanInfo。那么到底什么是BeanInfo呢?

        何為BeanInfo?JavaBean和BeanInfo有很大的關系。Sun所制定的JavaBean規范,很大程度上是為IDE準備的——它讓IDE能夠以可視化的方式設置JavaBean的屬性。如果在IDE中開發一個可視化應用程序,我們需要通過屬性設置的方式對組成應用的各種組件進行定制,IDE通過屬性編輯器讓開發人員使用可視化的方式設置組件的屬性。一般的IDE都支持JavaBean規范所定義的屬性編輯器,當組件開發商發布一個組件時,它往往將組件對應的屬性編輯器捆綁發行,這樣開發者就可以在IDE環境下方便地利用屬性編輯器對組件進行定制工作。JavaBean規范通過java.beans.PropertyEditor定義了設置JavaBean屬性的方法,通過BeanInfo描述了JavaBean哪些屬性是可定制的,此外還描述了可定制屬性與PropertyEditor的對應關系。BeanInfo與JavaBean之間的對應關系,通過兩者之間規范的命名確立:對應JavaBean的BeanInfo采用如下的命名規范:<Bean>BeanInfo。當JavaBean連同其屬性編輯器相同的組件注冊到IDE中后,當在開發界面中對JavaBean進行定制時,IDE就會根據JavaBean規范找到對應的BeanInfo,再根據BeanInfo中的描述信息找到JavaBean屬性描述(是否開放、使用哪個屬性編輯器),進而為JavaBean生成特定開發編輯界面。

        哈哈。現在可以理解dt.jar了吧。其實里面主要是swing組件的BeanInfo。IDE根據這些BeanInfo顯示這些組件以及開發人員如何定制他們。

        PS:好長時間沒有在BlogJava寫東西了。一方面是因為工作忙的原因,另一方面是自己工作后變的懶散的原因。今天是5-15號,距離自己工作一年還差兩個月零5天。在最后的這段時間,我要拼命的學習東西。重點放在設計模式,并發編程,網絡編程,工具類庫設計等。如果有時間的話,還有我那熟悉的Linux。另外,我想寫一個《老生常談系列》,如《老生常談之工廠》,哈哈。

     

    posted on 2011-05-15 19:09 landon 閱讀(10335) 評論(3)  編輯  收藏 所屬分類: Program

    FeedBack:
    # re: 你了解dt.jar嗎[未登錄]
    2011-05-16 16:21 | 小白
    哥,等著你的老生常談哈~~  回復  更多評論
      
    # re: 你了解dt.jar嗎
    2012-05-13 10:39 | liguoxuan
    高手呀,工作一年就已經開始準備看設計模式、并發編程了  回復  更多評論
      
    # re: 你了解dt.jar嗎
    2012-05-16 10:36 | landon
    不算高手,多多交流。哈哈。@liguoxuan
      回復  更多評論
      
    主站蜘蛛池模板: 亚洲精品高清一二区久久| 日本视频免费在线| 亚洲AV乱码一区二区三区林ゆな| 精品无码专区亚洲| 免费**毛片在线播放直播| 亚洲jizzjizz少妇| 国产网站免费观看| 激情小说亚洲图片| 亚洲av成人一区二区三区在线观看 | 久久久久亚洲AV无码网站| 无码国产精品一区二区免费模式| 久久亚洲国产精品一区二区| 久久青草免费91观看| 亚洲黄色片免费看| 国产精品亚洲综合一区| a在线视频免费观看在线视频三区| 亚洲AV蜜桃永久无码精品| 91在线免费观看| 久久亚洲高清观看| 国产人在线成免费视频| 亚洲精品国产摄像头| 免费不卡中文字幕在线| 黄色短视频免费看| 亚洲自偷精品视频自拍| 在线观看免费大黄网站| 一级毛片免费一级直接观看| 亚洲av中文无码乱人伦在线r▽| 57pao国产成视频免费播放| 亚洲中文字幕久久久一区| 亚洲av麻豆aⅴ无码电影| 久久免费看少妇高潮V片特黄| 亚洲成人免费在线观看| 免费jjzz在线播放国产| 在线观看片免费人成视频无码| 亚洲国产午夜精品理论片| 国产成人精品免费视频软件| 中文字幕无码一区二区免费| www.亚洲成在线| 丁香五月亚洲综合深深爱| 免费在线看v网址| 一本到卡二卡三卡免费高|