| 導購 | 订阅 | 在线投稿
分享
 
 
 

Java入門之開始面向對象的編程

來源:互聯網  2008-05-19 06:33:23  評論

你正在從傳統的過程化的編程轉向面向對象的開發模式嗎?還是想要進入膨脹的Java世界呢?你不會感到孤單的.成千上萬的開發者和你處在相同的情形之下.在這系列文章中,我們將使用Java語言帶領你一步一步的學習面向對象的開發過程.下面是我們這個系列文章的第一篇:

一種語言是面向對象的究竟意味著什麽呢?如果一種編程語言是真正的面向對象的語言,它必須支持以下的特點:

封裝--隱藏實現細節

多態--將同一個消息發送給不同的對象並使各個對象以預定的方式對消息做出響應的能力

繼承--拓展現存的類來生成專有類繼承原來類的狀態和行爲的能力

動態綁定--在編程時不必知道對象的具體類型就能向它們發送消息的能力

讓我們考察一下Java是如何支持這些功能的以及它又如何提供了附加的功能來使得從過程化的程序設計到面向對象的開發的轉變過程相對容易.

Java中面向對象的特點

Java是由Sun Microsystems公司在九十年代中期發布的面向對象(OOP)的編程語言.你可以從Sun公司的網站上下載最新的Java開發包(JDK).Java是一種解釋性的語言,這意味著其源程序首先被編譯成中間代碼的形式,然後在每次運行之前都要經過虛擬機的解釋,它是徹頭徹尾的面向對象的編程語言.

Java對程式員隱藏了許多傳統的面向對象編程語言--比方說C++和Object Pascal--的複雜性和讓人容易混淆的地方.例如,Java中沒有了指針,Java會爲程序員自動的清除引用類型,而且所有變量將被自動初始化成適當的缺省值.除了原始數據類型以外,Java中的所有東西都是對象,必要的時候,甚至可以爲原始數據類型也提供封裝機制.

對象簡介

對象是代表現實生活中的實物的軟件編程實體,比如說銀行帳號,計算機用戶,用戶介面上的按鈕,窗口菜單等等.對象是由它們的狀態和行爲定義的.例如,一個銀行帳號擁有一種狀態,諸如當前的收支狀況,賬戶的所有人,允許的最小交易額,等等,而它的行爲則包括提取,存入,收支平衡等.

一個對象的狀態是由只有對象自己知道的變量定義的.Java把這些變量稱爲數據域或者成員變量.數據域對對象來說是私有的除非顯式的使用關鍵字來定義它們的作用域,使它們對其它類可見.我們將在以後討論變量作用域的問題.

一個對象的行爲是由它上面的操作定義的.在Java中,這些操作被叫做方法.方法可以改變一個對象的狀態,創建新對象,實現實用的功能等.

類是一個實體,它定義了一個對象的運行方式以及在對象被創建或者說實例化的時候所包含的數據.類的作用就象一個模板,一個或者多個對象可以依照它來創建.下面是使用Java面向對象的概念申明HelloWorld應用程序的例子:

public class HelloWorld

{

private String helloMsg = "Hello World!";

public static void main(String[] args)

{

HelloWorld hw = new HelloWorld();

}

public HelloWorld()

{

// 顯示我們的"Hello World"消息

System.out.println(helloMsg);

}

}

上面的例子定義了一個模板,真實的HelloWorld對象可以從這個模板創建.你還會注意到從public static void main(String[] args)這一行開始的一段奇怪的代碼.這一段代碼定義的是一個特殊的方法main,它其實就是我們這個HelloWorld程序的入口點,上面的程序是一個典型的演示所有的Java應用程序如何定義它們的入口點.注意到即使是這個main入口點也被封裝在類裏面.對于這個例子,我們就是將它封裝在HelloWorld類裏.上面的程序展示了如何定義一個類,HelloWorld,以及其中的一個數據域,helloMsg和兩個方法main和HelloWorld.HelloWorld方法是一種特殊的方法,這種方法被稱做構造函數.我們將在後面的文章裏討論常規方法,構造函數和靜態成員函數的細節和區別.

在Java中,所有與一個特殊的類有關的源代碼都寫在一個與類同名的擁有後綴名.java的文件裏.Java編譯器讀取源文件並將它們翻譯成平台無關的,二進制格式的代碼,成爲字節代碼,然後將這些代碼分類保存在與類同名的但是後綴爲.class的文件裏.你最終會爲每一個類得到一個class文件.

編譯並運行我們的例子程序

一旦你已經從Sun的Web站點上下載了JDK並在你的機器上安裝了它,你就可以開始編譯並運行Java程序了.要編譯並運行我們的例子程序,將HelloWorld類的代碼粘貼到你最喜歡的文檔編輯器裏,將文件保存爲HelloWorld.java,然後,在命令提示符下,將當前路徑改變到包含了這個文件的路徑裏.現在你就可以在命令行提示符下鍵入下面的命令來編譯程序了:

Windows:

<你的JDK所在目錄\bin\javac HelloWorld.java

UNIX or Linux:

<你的JDK所在目錄/bin/javac HelloWorld.java

這個命令將在同一個目錄裏産生一個新的文件,叫做HelloWorld.class.要運行這個程序,請在命令提示符下鍵入下面的命令:

Windows:

<你的JDK所在目錄\bin\java HelloWorld

UNIX or Linux:

<你的JDK所在目錄/bin/java HelloWorld

你應該可以看到屏幕上顯示Hello World!

總結

我們已經接觸到了使用Java程序設計語言進行面向對象的編程的一些皮毛知識.下次,我們將剖析我們的例子程序,給它添加更多的功能,並討論更多的有關對象,類和其它面向對象編程的基本概念以及用Java如何實現它們.

  你正在從傳統的過程化的編程轉向面向對象的開發模式嗎?還是想要進入膨脹的Java世界呢?你不會感到孤單的.成千上萬的開發者和你處在相同的情形之下.在這系列文章中,我們將使用Java語言帶領你一步一步的學習面向對象的開發過程.下面是我們這個系列文章的第一篇:   一種語言是面向對象的究竟意味著什麽呢?如果一種編程語言是真正的面向對象的語言,它必須支持以下的特點:   封裝--隱藏實現細節   多態--將同一個消息發送給不同的對象並使各個對象以預定的方式對消息做出響應的能力   繼承--拓展現存的類來生成專有類繼承原來類的狀態和行爲的能力   動態綁定--在編程時不必知道對象的具體類型就能向它們發送消息的能力   讓我們考察一下Java是如何支持這些功能的以及它又如何提供了附加的功能來使得從過程化的程序設計到面向對象的開發的轉變過程相對容易.   Java中面向對象的特點   Java是由Sun Microsystems公司在九十年代中期發布的面向對象(OOP)的編程語言.你可以從Sun公司的網站上下載最新的Java開發包(JDK).Java是一種解釋性的語言,這意味著其源程序首先被編譯成中間代碼的形式,然後在每次運行之前都要經過虛擬機的解釋,它是徹頭徹尾的面向對象的編程語言.   Java對程式員隱藏了許多傳統的面向對象編程語言--比方說C++和Object Pascal--的複雜性和讓人容易混淆的地方.例如,Java中沒有了指針,Java會爲程序員自動的清除引用類型,而且所有變量將被自動初始化成適當的缺省值.除了原始數據類型以外,Java中的所有東西都是對象,必要的時候,甚至可以爲原始數據類型也提供封裝機制.   對象簡介   對象是代表現實生活中的實物的軟件編程實體,比如說銀行帳號,計算機用戶,用戶介面上的按鈕,窗口菜單等等.對象是由它們的狀態和行爲定義的.例如,一個銀行帳號擁有一種狀態,諸如當前的收支狀況,賬戶的所有人,允許的最小交易額,等等,而它的行爲則包括提取,存入,收支平衡等.   一個對象的狀態是由只有對象自己知道的變量定義的.Java把這些變量稱爲數據域或者成員變量.數據域對對象來說是私有的除非顯式的使用關鍵字來定義它們的作用域,使它們對其它類可見.我們將在以後討論變量作用域的問題.   一個對象的行爲是由它上面的操作定義的.在Java中,這些操作被叫做方法.方法可以改變一個對象的狀態,創建新對象,實現實用的功能等.   類   類是一個實體,它定義了一個對象的運行方式以及在對象被創建或者說實例化的時候所包含的數據.類的作用就象一個模板,一個或者多個對象可以依照它來創建.下面是使用Java面向對象的概念申明HelloWorld應用程序的例子:   public class HelloWorld   {   private String helloMsg = "Hello World!";   public static void main(String[] args)   {   HelloWorld hw = new HelloWorld();   }   public HelloWorld()   {   // 顯示我們的"Hello World"消息   System.out.println(helloMsg);   }   }   上面的例子定義了一個模板,真實的HelloWorld對象可以從這個模板創建.你還會注意到從public static void main(String[] args)這一行開始的一段奇怪的代碼.這一段代碼定義的是一個特殊的方法main,它其實就是我們這個HelloWorld程序的入口點,上面的程序是一個典型的演示所有的Java應用程序如何定義它們的入口點.注意到即使是這個main入口點也被封裝在類裏面.對于這個例子,我們就是將它封裝在HelloWorld類裏.上面的程序展示了如何定義一個類,HelloWorld,以及其中的一個數據域,helloMsg和兩個方法main和HelloWorld.HelloWorld方法是一種特殊的方法,這種方法被稱做構造函數.我們將在後面的文章裏討論常規方法,構造函數和靜態成員函數的細節和區別.   在Java中,所有與一個特殊的類有關的源代碼都寫在一個與類同名的擁有後綴名.java的文件裏.Java編譯器讀取源文件並將它們翻譯成平台無關的,二進制格式的代碼,成爲字節代碼,然後將這些代碼分類保存在與類同名的但是後綴爲.class的文件裏.你最終會爲每一個類得到一個class文件.   編譯並運行我們的例子程序   一旦你已經從Sun的Web站點上下載了JDK並在你的機器上安裝了它,你就可以開始編譯並運行Java程序了.要編譯並運行我們的例子程序,將HelloWorld類的代碼粘貼到你最喜歡的文檔編輯器裏,將文件保存爲HelloWorld.java,然後,在命令提示符下,將當前路徑改變到包含了這個文件的路徑裏.現在你就可以在命令行提示符下鍵入下面的命令來編譯程序了:   Windows:   <你的JDK所在目錄\bin\javac HelloWorld.java   UNIX or Linux:   <你的JDK所在目錄/bin/javac HelloWorld.java   這個命令將在同一個目錄裏産生一個新的文件,叫做HelloWorld.class.要運行這個程序,請在命令提示符下鍵入下面的命令:   Windows:   <你的JDK所在目錄\bin\java HelloWorld   UNIX or Linux:   <你的JDK所在目錄/bin/java HelloWorld   你應該可以看到屏幕上顯示Hello World!   總結   我們已經接觸到了使用Java程序設計語言進行面向對象的編程的一些皮毛知識.下次,我們將剖析我們的例子程序,給它添加更多的功能,並討論更多的有關對象,類和其它面向對象編程的基本概念以及用Java如何實現它們.
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有