置頂隨筆

          ???????? Java自1996年正式發布以來,經歷了初生、成長和壯大的階段,現在已經成為IT領域里的主流編程語言。
          ??????? Java發展歷史

          ????????????????????? 1995 Java語言誕生。
          ????????????????????? 1996 JDK1.0發布,10個最主要的操作系統供應商申明將在其產品中支持Java技術。
          ????????????????????? 1997 JDK1.1發布。
          ???????????????????????1998 JDK1.1下載量超過200萬次,JDK1.2(稱Java2)發布,JFC/Swing技術發布, JFC/Swing被下載了50多萬次。
          ????????????????????? 1999 Java被分成J2SE、J2EE 和J2ME,JSP/Servlet技術誕生。
          ?????????????????????? 2000 JDK1.3發布, JDK1.4發布。
          ?????????????????????? 2001 Nokia公司宣布到2003年將出售1億部支持Java的手機,J2EE1.3發布
          ?????????????????????? 2002 J2SE1.4發布,自此Java的計算能力有了大幅度提升。J2EE SDK的下載量達到200萬次。
          ?????????????????????? 2003 5.5億臺桌面機上運行Java程序,75%的開發人員將Java作為首要開發工具。
          ?????????????????????? 2004 J2SE1.5發布,這是Java語言的發展史上的又一里程碑事件。為了表示這個版本的重要性,J2SE1.5更名為J2SE5.0。?
          ???????????????????????2005 JavaOne大會召開,Sun公司公開Java SE6。此時,Java的各種版本被更名,取消其中的數字"2":J2EE更名為Java EE, J2SE更名為Java SE,J2ME更名為Java ME

          ???????C#語言是Microsoft近幾年新推出的一種純面向對象的語言。在1996年以前把重點主要放在了C/S架構的系統。但是隨著互聯網的出現和發展,B/S架構系統逐步升溫,Microsoft也看到這一點,但是SUN公司的J2EE已經在這一方面占領了市場,所以Microsoft公司自從1996年開始由著名架構師
          Anders Hejlsberg 領導C#語言的開發工作,并在微軟 .NET 框架中扮演了重要的角色。直到Microsoft正式發布了 Microsoft Visual Studio .NET 2003 ,現在發展到.NET 20005,我們可以看到Microsoft公司的野心,想吞并整個市場,打敗JAVA。
          ???? Java之所以直到現在沒有Microsoft打垮,應用如此廣泛是因為Java具有多方面的優勢。其特點如下:
          (1)面向對象。Java自誕生之時就設計成面向對象的語言,而C++語言是一種強制面向對象的語言。面向對象可以說是Java最重要的特性,它不支持類似C語言那樣的面向過程的程序設計技術。Java支持靜態和動態風格的代碼重用。
          (2)跨平臺。對于Java程序,不管是Windows平臺還是Unix平臺或是其他平臺,它都適用。Java編輯器把Java源程序編譯成與體系結構無關的字節碼指令,只要安裝了Java運行系統,Java程序就可在任意的處理器上運行。這些字節碼指令由Java虛擬機來執行,Java虛擬機的解釋器得到字節碼后,對它進行轉換,使之能夠在不同的平臺運行。
          (3)直接支持分布式的網絡應用。除了支持基本的語言功能,Java核心類庫還包括一個支持HTTP、SMTP和FTP等基于TCP/IP協議的類庫。因此,Java應用程序可憑借URL打開并訪問網絡上的對象,其訪問方式與訪問本地文件系統幾乎完全相同。在Java出現以前,為分布式環境尤其是Internet提供動態的內容無疑是一項非常宏偉、難以想象的任務,但Java的語言特性卻使我們很容易地達到了這個目標。
          (4)安全性和健壯性。Java致力于檢查程序在編譯和運行時的錯誤,類型檢查幫助檢查出許多開發早期出現的錯誤。Java 支持自動內存管理,這不但讓程序員減輕許多負擔,也減少程序員犯錯的機會。Java自己操縱內存減少了內存出錯的可能性。Java還能夠檢測數組邊界,避免了覆蓋數據的可能。在Java語言里,指針和釋放內存等功能均被拋棄,從而避免了非法內存操作的危險。
          ?? C#語言比Java出現大概晚了4-5年的時間,所以C#語言在設計上吸取了Java和C++的優點。我們從一下幾個方面討論一下他們之間的區別和聯系:
          ?? 1) 基本語法:
          ????????????? Java語言的基本的數據類型和C#一樣,但是Java把每種基本數據類型都對應一個Java封裝類(String 特殊),所有的類都有一個父類Object,,Object是Java的總根。而C#語言每種基本數據類型的父類都是Object,Object也是C#的總根。???
          ?????????????? Java中的常量是以final關鍵字進行聲明,C#中是以const關鍵字進行聲明。
          ?????????????? Java中的運算符,表達式,數組和C#是一樣的。
          ?????????????? Java中的選擇語句有if.......else ,Switch case兩種,C#也是存在這兩種,但是Switch case語句比Java 的功能增強了?。
          ??????????????? Java,C#中的循環語句主要有 while,do.....while,for 循環,C#中還有foreach循環,Java在1.5中新增了for in循環。
          ?????????????? Java中沒有結構,在 1.5中新增了枚舉,而C#有結構和枚舉。
          2)? ?面向對象:
          ????????????? Java和C#都是純面向對象的語言,我們都知道面向對象幾大特點:封裝,繼承,多態。
          ???????? 封裝:封裝是一種把代碼和代碼所操作的數據捆綁在一起,使這兩者不受外界干擾和誤用的機制.封裝可被理解為一種用做保護的包裝器,以防止代碼和數據被包裝器外部所定義的其他代碼任意訪問.對包裝器內部代碼與數據的訪問通過一個明確定義的接口來控制.封裝代碼的好處是每個人都知道怎樣訪問代碼,進而無需考慮實現細節就能直接使用它,同時不用擔心不可預料的副作用.
          ??????? 繼承:繼承是指一個對象從另一個對象中獲得屬性的過程.是面向對象程序設計的三大原則之二。
          ?????? 多態:同一方法在不同的子類中有同一種實現。

          ?????
          ?????? 在JAVA中,最基本的封裝單元是類,和類同一級別的還有接口,說道這里我們應該從JAVA的設計說起,Java語言是為小型的設備設計,最初是應用于機頂盒,所以Java覺得用類就足夠了。

          ?????? 在C#中,最基本的封裝單元是類,和類同一級別的還有接口,事件,委托。因為C#從設計的出發點就是PC系統,所以C#,還引入了命名空間(namespace),一個namespace可以包括很多的Class。
          ????????因為Java和C#從設計的出發點不同,所以二者之間有很多區別。從現在的發展看來,我覺得C#的設計要比Java好。
          ??????? 先寫到這兒吧,有時間說一下C#的事件和委托,把Java和C#事件對比一下。
          ??????? 以上是個人總結,如有錯誤之處請大家指正。

          posted @ 2006-08-25 01:03 小丁 閱讀(961) | 評論 (0)編輯 收藏

          2006年8月25日

          ???????? Java自1996年正式發布以來,經歷了初生、成長和壯大的階段,現在已經成為IT領域里的主流編程語言。
          ??????? Java發展歷史

          ????????????????????? 1995 Java語言誕生。
          ????????????????????? 1996 JDK1.0發布,10個最主要的操作系統供應商申明將在其產品中支持Java技術。
          ????????????????????? 1997 JDK1.1發布。
          ???????????????????????1998 JDK1.1下載量超過200萬次,JDK1.2(稱Java2)發布,JFC/Swing技術發布, JFC/Swing被下載了50多萬次。
          ????????????????????? 1999 Java被分成J2SE、J2EE 和J2ME,JSP/Servlet技術誕生。
          ?????????????????????? 2000 JDK1.3發布, JDK1.4發布。
          ?????????????????????? 2001 Nokia公司宣布到2003年將出售1億部支持Java的手機,J2EE1.3發布
          ?????????????????????? 2002 J2SE1.4發布,自此Java的計算能力有了大幅度提升。J2EE SDK的下載量達到200萬次。
          ?????????????????????? 2003 5.5億臺桌面機上運行Java程序,75%的開發人員將Java作為首要開發工具。
          ?????????????????????? 2004 J2SE1.5發布,這是Java語言的發展史上的又一里程碑事件。為了表示這個版本的重要性,J2SE1.5更名為J2SE5.0。?
          ???????????????????????2005 JavaOne大會召開,Sun公司公開Java SE6。此時,Java的各種版本被更名,取消其中的數字"2":J2EE更名為Java EE, J2SE更名為Java SE,J2ME更名為Java ME

          ???????C#語言是Microsoft近幾年新推出的一種純面向對象的語言。在1996年以前把重點主要放在了C/S架構的系統。但是隨著互聯網的出現和發展,B/S架構系統逐步升溫,Microsoft也看到這一點,但是SUN公司的J2EE已經在這一方面占領了市場,所以Microsoft公司自從1996年開始由著名架構師
          Anders Hejlsberg 領導C#語言的開發工作,并在微軟 .NET 框架中扮演了重要的角色。直到Microsoft正式發布了 Microsoft Visual Studio .NET 2003 ,現在發展到.NET 20005,我們可以看到Microsoft公司的野心,想吞并整個市場,打敗JAVA。
          ???? Java之所以直到現在沒有Microsoft打垮,應用如此廣泛是因為Java具有多方面的優勢。其特點如下:
          (1)面向對象。Java自誕生之時就設計成面向對象的語言,而C++語言是一種強制面向對象的語言。面向對象可以說是Java最重要的特性,它不支持類似C語言那樣的面向過程的程序設計技術。Java支持靜態和動態風格的代碼重用。
          (2)跨平臺。對于Java程序,不管是Windows平臺還是Unix平臺或是其他平臺,它都適用。Java編輯器把Java源程序編譯成與體系結構無關的字節碼指令,只要安裝了Java運行系統,Java程序就可在任意的處理器上運行。這些字節碼指令由Java虛擬機來執行,Java虛擬機的解釋器得到字節碼后,對它進行轉換,使之能夠在不同的平臺運行。
          (3)直接支持分布式的網絡應用。除了支持基本的語言功能,Java核心類庫還包括一個支持HTTP、SMTP和FTP等基于TCP/IP協議的類庫。因此,Java應用程序可憑借URL打開并訪問網絡上的對象,其訪問方式與訪問本地文件系統幾乎完全相同。在Java出現以前,為分布式環境尤其是Internet提供動態的內容無疑是一項非常宏偉、難以想象的任務,但Java的語言特性卻使我們很容易地達到了這個目標。
          (4)安全性和健壯性。Java致力于檢查程序在編譯和運行時的錯誤,類型檢查幫助檢查出許多開發早期出現的錯誤。Java 支持自動內存管理,這不但讓程序員減輕許多負擔,也減少程序員犯錯的機會。Java自己操縱內存減少了內存出錯的可能性。Java還能夠檢測數組邊界,避免了覆蓋數據的可能。在Java語言里,指針和釋放內存等功能均被拋棄,從而避免了非法內存操作的危險。
          ?? C#語言比Java出現大概晚了4-5年的時間,所以C#語言在設計上吸取了Java和C++的優點。我們從一下幾個方面討論一下他們之間的區別和聯系:
          ?? 1) 基本語法:
          ????????????? Java語言的基本的數據類型和C#一樣,但是Java把每種基本數據類型都對應一個Java封裝類(String 特殊),所有的類都有一個父類Object,,Object是Java的總根。而C#語言每種基本數據類型的父類都是Object,Object也是C#的總根。???
          ?????????????? Java中的常量是以final關鍵字進行聲明,C#中是以const關鍵字進行聲明。
          ?????????????? Java中的運算符,表達式,數組和C#是一樣的。
          ?????????????? Java中的選擇語句有if.......else ,Switch case兩種,C#也是存在這兩種,但是Switch case語句比Java 的功能增強了?。
          ??????????????? Java,C#中的循環語句主要有 while,do.....while,for 循環,C#中還有foreach循環,Java在1.5中新增了for in循環。
          ?????????????? Java中沒有結構,在 1.5中新增了枚舉,而C#有結構和枚舉。
          2)? ?面向對象:
          ????????????? Java和C#都是純面向對象的語言,我們都知道面向對象幾大特點:封裝,繼承,多態。
          ???????? 封裝:封裝是一種把代碼和代碼所操作的數據捆綁在一起,使這兩者不受外界干擾和誤用的機制.封裝可被理解為一種用做保護的包裝器,以防止代碼和數據被包裝器外部所定義的其他代碼任意訪問.對包裝器內部代碼與數據的訪問通過一個明確定義的接口來控制.封裝代碼的好處是每個人都知道怎樣訪問代碼,進而無需考慮實現細節就能直接使用它,同時不用擔心不可預料的副作用.
          ??????? 繼承:繼承是指一個對象從另一個對象中獲得屬性的過程.是面向對象程序設計的三大原則之二。
          ?????? 多態:同一方法在不同的子類中有同一種實現。

          ?????
          ?????? 在JAVA中,最基本的封裝單元是類,和類同一級別的還有接口,說道這里我們應該從JAVA的設計說起,Java語言是為小型的設備設計,最初是應用于機頂盒,所以Java覺得用類就足夠了。

          ?????? 在C#中,最基本的封裝單元是類,和類同一級別的還有接口,事件,委托。因為C#從設計的出發點就是PC系統,所以C#,還引入了命名空間(namespace),一個namespace可以包括很多的Class。
          ????????因為Java和C#從設計的出發點不同,所以二者之間有很多區別。從現在的發展看來,我覺得C#的設計要比Java好。
          ??????? 先寫到這兒吧,有時間說一下C#的事件和委托,把Java和C#事件對比一下。
          ??????? 以上是個人總結,如有錯誤之處請大家指正。

          posted @ 2006-08-25 01:03 小丁 閱讀(961) | 評論 (0)編輯 收藏

          僅列出標題  
          主站蜘蛛池模板: 鹤山市| 惠安县| 湘潭市| 荣成市| 上饶县| 合江县| 闵行区| 福海县| 南靖县| 琼中| 漳州市| 泸定县| 嘉峪关市| 丰县| 呼伦贝尔市| 沧州市| 交口县| 张北县| 平陆县| 普兰店市| 闸北区| 杭锦后旗| 平泉县| 彰化市| 巩留县| 察雅县| 壤塘县| 蒙城县| 静海县| 若尔盖县| 修武县| 绵阳市| 舒兰市| 女性| 吉安市| 柯坪县| 霍林郭勒市| 察隅县| 丰顺县| 宕昌县| 治多县|