Java 程式設計基礎班(1) - 網路資料庫實驗室
Java 程式設計基礎班(1) - 網路資料庫實驗室
Java 程式設計基礎班(1) - 網路資料庫實驗室
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Java</strong> 程式設計<br />
基礎班 (1)<br />
劉根豪<br />
台大電機所網路資料庫研究室<br />
Class 1 1<br />
課程簡介<br />
Class 1<br />
上課時間:<br />
Email: kenliu@arbor.ee.ntu.edu.tw<br />
星期二19:00~21:30<br />
星期五19:00~21:30<br />
上課次數:13<br />
課程網頁:<br />
http://javacourse.blogspot.com<br />
2<br />
1
課程大綱<br />
<strong>Java</strong>簡介<br />
物件概念、 package 、 …etc<br />
Eclipse開發平台介紹<br />
<strong>Java</strong>基本程式語言<br />
基本型別、敍述、陳列、 …etc<br />
<strong>Java</strong>物件導向程式設定<br />
類別、方法、子類別與繼承、抽象方法與類<br />
別、介面、可視性、包裹、例外處理<br />
Class 1<br />
課程大綱 (Cont)<br />
進階內容<br />
Class 1<br />
繪圖程式設計<br />
資料庫程式設計<br />
網路程式設計<br />
XML與Web Service<br />
3<br />
4<br />
2
Lesson 1 - <strong>Java</strong> 簡介<br />
Class 1<br />
<strong>Java</strong>語言簡介<br />
<strong>Java</strong> 何時開始發展?(When)<br />
1991年四月份,Sun的綠色計畫(Green Project)<br />
開始著手於發展消費性電子產品時(Consumer<br />
Electronics),所使用的語言是C、C++、及Oak (為<br />
<strong>Java</strong>語言的前身)<br />
Class 1<br />
5<br />
6<br />
3
<strong>Java</strong>語言簡介<br />
誰開發了<strong>Java</strong>?(Who)<br />
美國昇陽電腦公司<br />
<strong>Java</strong> 發展小組<br />
早期的成員(綠色計畫)<br />
是Patrick Naughton,<br />
James Gosling, and<br />
Mike Sheridan,而現<br />
在大家較為熟悉的成員<br />
是James Gosling<br />
Class 1<br />
<strong>Java</strong>語言簡介<br />
1993年,當<strong>Java</strong>研發小組繼續埋首發展這個新世代的程式<br />
語言的時候,WWW(World Wide Web)開始出現於<br />
Internet的舞台,並掀起世界性的資訊革命。<strong>Java</strong>研發小<br />
組很快就體認到,像<strong>Java</strong>這樣跨平台的程式語言,十分適<br />
合應用在Internet上。於是,<strong>Java</strong>研發小組做了一項重大<br />
的決定,使得<strong>Java</strong>成為眾所矚目的焦點。他們寫了一個網<br />
頁瀏覽器(browser)─Hot<strong>Java</strong>,它是第一個可以支援<br />
<strong>Java</strong> Applet 的瀏覽器。您可以將 <strong>Java</strong> Applet 嵌入<br />
HTML文件中,如此一來,您的網頁便可以互動式的方式而<br />
且十足的聲光效果呈現在使用者面前。<strong>Java</strong>在WWW上展現<br />
強大的威力,讓<strong>Java</strong>一夕之間成為電腦界的寵兒。<br />
Class 1<br />
7<br />
8<br />
4
<strong>Java</strong>語言簡介<br />
Why <strong>Java</strong>?<br />
跨平台<br />
安全性&強固性<br />
強大的延伸套件<br />
Open Source!<br />
開放性架構<br />
Class 1<br />
<strong>Java</strong> Specification Request<br />
(JSR)<br />
<strong>Java</strong>語言簡介<br />
直譯式(Interpreted)的<br />
程式語言。<br />
<strong>Java</strong>原始程式<strong>Java</strong>的編<br />
譯器Interpreter結果<br />
因為<strong>Java</strong>的位元碼提供了<br />
一個與機器架構都無關的<br />
檔案格式,所以可以在各<br />
種平台上執行,只要平台<br />
上有所謂的<strong>Java</strong>虛擬機器<br />
手機<br />
Class 1<br />
9<br />
10<br />
5
<strong>Java</strong>語言簡介<br />
<strong>Java</strong>執行的五個步驟<br />
編輯原始碼 Edit<br />
編譯 Compile<br />
從原生碼產生java bytecode<br />
載入bytecode Load<br />
Class loader 將 bytecode 載入memory<br />
認證 Verify<br />
Verifier ensures bytecode does not violate security<br />
requirements<br />
執行 Execute<br />
Interpreter translates bytecode into machine language<br />
Class 1<br />
<strong>Java</strong>語言簡介<br />
名詞區分<br />
JDK<br />
Class 1<br />
<strong>Java</strong> Development Kit<br />
如果要自己寫<strong>Java</strong>程式並complied成<strong>Java</strong> Bytecode,<br />
就需要用JDK<br />
JRE<br />
<strong>Java</strong> Runtime Environment<br />
如果只是要執行<strong>Java</strong>程式而不自己寫,則只需要JRE<br />
JDK就包含了JRE<br />
11<br />
12<br />
6
<strong>Java</strong>語言簡介<br />
<strong>Java</strong> 程式語言<br />
Class 1<br />
High-level 的物件導向程式語言,語法相當類似C++<br />
語言,但排除了C++ 的複雜語法,且儘量追求bugfree!<br />
用來寫<strong>Java</strong> 應用程式(包含Applet、Servlet 及<br />
<strong>Java</strong>Beans 元件)的程式語言,當<strong>Java</strong> 程式被編譯<br />
時,它會被轉成為位元碼(byte code)的型態。<br />
位元碼是<strong>Java</strong> VM 的機器語言,JVM 可以直接以硬體<br />
方式( <strong>Java</strong> chip)來執行,但通常都還是以軟體型<br />
態出現,而位元碼便由JVM 來直譯且執行。<br />
<strong>Java</strong>語言簡介<br />
<strong>Java</strong>版本<br />
<strong>Java</strong> 1<br />
<strong>Java</strong> 1.0<br />
<strong>Java</strong> 1.1<br />
<strong>Java</strong> 1.2<br />
<strong>Java</strong> 2<br />
J2EE (Enterprise Edition)<br />
J2SE (Standard Edition) (最新stable版本<br />
1.4.2/1.5)<br />
J2ME (Micro Edition)<br />
Class 1<br />
13<br />
14<br />
7
<strong>Java</strong>語言簡介<br />
JDK1.5<br />
加入新的語言功能<br />
JDK1.4<br />
新增功能例子<br />
<strong>Java</strong> Web Start<br />
可幫助軟體的部署和管理<br />
客戶只要點選某Web連結,就可以輕易地啟動軟體<br />
如果軟體不在local電腦上,<strong>Java</strong> Web Start會自動地下載所需<br />
要的全部檔案,然後部署到local電腦上。以後就可以透過網頁<br />
連結或Icon來啟動此軟體<br />
<strong>Java</strong> Web Start會自動管理已經被部署好的軟體,自動將軟體更<br />
新到最新版<br />
See http://java.sun.com/products/javawebstart/<br />
Class 1<br />
<strong>Java</strong>開發環境<br />
文字開發模式<br />
Class 1<br />
下載:JDK(下載後,要讀readme.html ! 依照其步驟<br />
安裝即可!)<br />
UltraEdit<br />
設定環境變數<br />
在autoexec.bat 中加入( 開始- > 執行- > sysedit )<br />
path=%PATH%;c:\jdk1.3\bin<br />
(將你安裝jdk1.3的路徑加進來)<br />
set classpath=.<br />
15<br />
16<br />
8
<strong>Java</strong>開發環境<br />
文字開發模式<br />
Class 1<br />
javac :the java compiler<br />
語法: javac 檔名.java<br />
java :the java interpreter<br />
語法: java 檔名<br />
<strong>Java</strong>開發環境<br />
IDE開發環境<br />
Class 1<br />
Sun Forte (Free, Open Source)<br />
IBM Eclipse (Free, Open Source, Open Plugin<br />
API)<br />
Borland JBuilder (commercial version)<br />
17<br />
18<br />
9
<strong>Java</strong>開發環境<br />
IBM Eclipse<br />
Class 1<br />
IBM 贊助的Open<br />
Source計畫<br />
功能強大的開發環境<br />
plug in模組開發功能<br />
使它的延伸性更強<br />
<strong>Java</strong>開發環境安裝<br />
直接解開Eclipse的壓縮檔<br />
請記得安裝jdk1.4<br />
在安裝目錄下找到eclipse.exe,直接執行<br />
即可<br />
Class 1<br />
19<br />
20<br />
10
Eclipse畫面<br />
Class 1<br />
選擇<strong>Java</strong> perspective<br />
Class 1<br />
21<br />
22<br />
11
選擇新增project<br />
Class 1<br />
Project相關設定<br />
Class 1<br />
23<br />
24<br />
12
Project設定完成<br />
Class 1<br />
新增javacourse1 package<br />
Class 1<br />
25<br />
26<br />
13
新增exercise1_1 class<br />
Class 1<br />
新增exercise1_1 class (Cont)<br />
Class 1<br />
屬於javacourse1 package<br />
27<br />
28<br />
14
程式的編輯區<br />
Class 1<br />
撰寫你的第一個<strong>Java</strong>程式<br />
/*<br />
* 將1加到100,印出結果<br />
*/<br />
package javacourse1;<br />
public class exercise1_1 {<br />
//建構子<br />
public exercise1_1() {<br />
<br />
}<br />
//程式進入點<br />
public static void main(String[] args) {<br />
int sum = 0; //變數sum的初始化<br />
for (int i = 1; i
開始執行exercise1_1<br />
Class 1<br />
開始執行exercise1_1<br />
Class 1<br />
1<br />
2<br />
3<br />
4<br />
5<br />
31<br />
32<br />
16