java語言第二次補充3_第1頁
java語言第二次補充3_第2頁
java語言第二次補充3_第3頁
java語言第二次補充3_第4頁
java語言第二次補充3_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第 1 章Java 語言基礎教學提示:掌握編寫 Java Applet 程序和Java Application 程序的基本方法;了解程序的結構和 Java語言的語 則;理解事件驅動的工作原理;了解 DOS 界面程序和 J2ME 程序的特點和設計方法。教學要求:知 識 要 點能 力 要 求相 關 知 識引入構造函數(shù)控件事件驅動的原理會編寫簡單的Java Applet 程序網頁Applet 標記窗體初始化 main 方法窗體布局會編寫簡單的Java Application 程序窗口接口pr ln 方法read 方法會編寫簡單的 DOS 界面程序異常處理語句Display 類TextBox 類d 類

2、了解 J2ME 程序的設計過程KToolBar 的使用Java 程序設計與應用開發(fā)案例1.1網頁上的問候程序1.1.1程序說明Java 程序主要有兩類:獨立運行的 Java Application 和嵌入網頁的 Java Applet。本節(jié)將制作一個 Java Applet 問候程序,在網頁上的 Applet 區(qū)域(窗體)上使用采用事件驅動方式。和文本框控件,設網頁上已有問候程序 (MyJavaApplet) , 且已將編譯得到的字節(jié)碼 文 件 (MyJavaApplet.class)嵌入網頁(AppletInclude.htm),為簡單起見,將程序和網頁文件放在同一個文件夾(設為 Java)

3、中。網頁上可以只有 Applet 元素,也可以包含其他內容。程序可以通過使用 IE 打開網頁運行,也可以通過使用 AppletViewer 打開網頁運行。 AppletViewer 是 Java JDK 附帶的工具,與使用 IE 打開網頁不同的是,AppletViewer 只運行網頁上的 Applet 成分,忽略網頁上的其他成分。AppletViewer 需要在 DOS 控制臺下運行,為方便使用,創(chuàng)建一個調用 AppletViewer 打開網頁的批處理文件(runhtml.bat),也放在 Java文件夾中。程序運行結果如圖 1.1 所示。圖 1.1 Applet 程序運行結果程序運行時,用戶

4、在上面的文本框(輸入文本框)中輸入本框(輸出文本框)中就會顯示出相應的問候。后,按 Enter 鍵,下面的文1.1.2實現(xiàn)方案設計 Applet 窗體的大小為 300200,程序使用 3 個控件:(prompt)、用于輸入的文本框(input)和用于輸出的文本框(output),采用系統(tǒng)預定義的流式布局自動設置窗體上控件的位置和大小。程序的整體框架如下:2import java.applet.*; import java.awt.*; import java.awt.event.*;第 1 章 Java 語言基礎程序由引入和主類。引入是明程序用到的系統(tǒng)預定義類及其位置(包),引入是 impor

5、t,可以用*號代表相應位置中所有的系統(tǒng)預定義類。由于的本例是 Applet 程序,因而要引入 java.applet 包和 java.awt 包中的系統(tǒng)預定義類;由于有事件驅動,因而要引入 java.awt.event 包中的系統(tǒng)預定義類。此外,Java 程序是區(qū)別大小寫的, Java 語句以分號結尾。程序可以有多個類定義,但必須有且只有一個主類。主類名與文件名(程序名)相同,主類(也只有主類)應是公共的(public),即能夠被外部系統(tǒng)(Java 解釋系統(tǒng))調用,Applet 程序主類一定要繼承系統(tǒng)預定義的 Applet 類(在 java.applet 包中)。類定義的是 class,繼im

6、plements承的是 extends。由于有事件驅動知識,在主類頭的最后,用要使用 ActionListener 接口,關于事件驅動知識,后面會有詳細的介紹。在類定義體中,通常是域和方法定義。域是根據所屬類的功能需求,定義需要用到的對象(控件)或全局變量。本例使用了 3 個控件,其中,是 Label 類的對象,文本框是 TextField 類的對象,Label 類和 TextField 類都是系統(tǒng)預定義的類,都在 java.awt 包中。方法定義(方法的覆蓋)有兩種情況:一種是根據所屬類的功能需求,選擇繼承來的方法,這些方法通常是空的或抽象的(沒有方法體),編寫時,方法頭不變,設計(覆蓋)方

7、法體代碼即可;另一種情況是根據所屬類的功能需求,自定義方法。由于本例使用了控件,因而一定要選擇從系統(tǒng)預定義的 Applet 類繼承來的init 方法,填寫初始化窗體的方法體代碼,init 方法也是一個方法(第一)。同時,由于使用了 ActionListener 接口,因而一定要定義(實現(xiàn))接口中的 actionPerformed 方法,填寫響應事件的方法體代碼。程序的編程要點已在整體框架中標出,在 1.1.3 節(jié)中將會詳細。新建“Java”文件夾,打開 JCreator(也可使用其他的 Java 代碼編輯器或集成開發(fā)工具),上的【New】按鈕,在出現(xiàn)的框中選擇【Files】選項卡,在該選項卡上

8、選單擊擇【Java File】選項,輸入程序名“MyJavaApplet”,并選擇工作位置為“Java”文件夾,單擊【確定】按鈕后進入編輯器。輸入前面的程序整體框架,其中,注釋說明部分的代碼,在 1.1.3 節(jié)中可以查到,當全部代碼輸入完成并檢查無誤后,單擊上的【Save】按鈕保存文件。選擇【Build】 |3public class MyJavaApplet extends Applet implementionListenerLabel prompt;TextField input,output; public void init()/創(chuàng)建控件/添加控件/接口public void act

9、ionPerformed(ActionEvent e)/事件響應Java 程序設計與應用開發(fā)案例【Compile File】菜單命令進行編譯,錯誤,可按照編譯提示信息進行修改,然后保存并重新編譯,直到提示“Pros completed”時,編譯成功。設計一個簡單的包含 Applet 標記的網頁(AppletInclude.htm),代碼如下:在網頁中,(啟動 Applet)標記說明嵌入網頁的 Java Applet 程序(字節(jié)碼文件),并說明窗體的寬高;(結束Applet)標記說明嵌入終止。打開 JCreator(也可使用其他的 HTML 代碼編輯器或可視化設計器),單擊上的【New】按鈕,在

10、出現(xiàn)的框中,選擇【Files】選項卡,在該選項卡上選擇【HTML File】選項,輸入網頁文件名“AppletInclude”,并選擇工作位置為“Java”文件夾,單擊【確定】按鈕后進入編輯器。輸入上述代碼,檢查無誤后單擊上的【Save】按鈕保存文件,在“Java”文件夾中將出現(xiàn)“AppletInclude.htm”文件,網頁制作完成。使用 IE 打開網頁即可運行其中的Applet 程序。也可使用 Java JDK 提供的 AppletViewer 工具打開網頁,只運行網頁上的 Applet 成分,在 DOS 控制臺下進入“Java”目錄,然后輸入如下命令:C:JBuilder9jdk1.4b

11、inAppletViewer AppletInclude.htm本例采用 JBuilder 自帶的 JDK,默認安裝路徑為 C:JBuilder9jdk1.4,AppletViewer 工具在 bin 子目錄下,若安裝時指定了其他的路徑或采用獨立相應的路徑。的 JDK,則要將其修改為為方便使用,可以將該 DOS 命令放到一個批處理文件中(設為 runhtml.bat)。打開記事本,輸入上面的批處理命令,保存時,選擇文件位置為“Java”文件夾,文件類型為“所有文件(*.*)”,文件名為“runhtml.bat”,文件主名可以是任意的,但擴展名必須是“.bat”。運行時,在“Java”文件夾下雙

12、擊該批處理文件即可。1.1.3代碼及分析在程序整體框架中,說明編程要點的注釋部分對應的代碼及分析如下。1) init 方法4/創(chuàng)建控件prompt=new Label(請輸入你的名字:); input=new TextField(6);output=new TextField(20);/添加控件 add(prompt); add(input);add(output);第 1 章 Java 語言基礎創(chuàng)建控件時可使用控件所屬類中的特殊方法構造函數(shù)。構造函數(shù)與類同名,于創(chuàng)建屬于類的對象,不能直接調用,要用 new 先導調用。類的構造函數(shù)的參數(shù)是標簽中顯示的字符串,文本框類的構造函數(shù)的參數(shù)是文本框的寬

13、度。Applet 窗體默認的布局管理方式為流式布局(FlowLayout),即從左到右、自上向下。水平方向居中。用 add 方法順序添加控件,用 addActionListener 方法給 input 文本框捉控件上的事件,參數(shù) this 表示當前類的對象。2) 接口方法ActionListener 接口,接口只捕文本框的 getText 方法用于返回文本框中的字符串;文本框的 setText 方法用于設置文本框中的字符串(覆蓋原有字符串)。1.1.4相關知識事件驅動原理簡單地說,事件驅動的原理是:用接口捕捉事件;接口捕捉到事件后,自動調用其中相應的方法;方法中含有程序員寫入的對事件響應的代碼

14、。接口是系統(tǒng)預定義的特殊類,含有一個或多個抽象方法(無方法體)。事件指的是在程序運行時,用戶對程序的有效操作。不同的事件需要不同的接口捕捉。ActionListener 稱為動作接口,捕捉動作事件。動作事件主要包括:用戶單擊按鈕、當編輯光標在文本框中時按 Enter 鍵等。事件驅動的編程要點事件驅動的編程要點有 3 個:接口以說明。1) 接口、接口和接口方法。下面結合本節(jié)案例加在文本框中按 Enter 鍵屬于動作事件,要使用動作接口(ActionListener)捕捉,在類頭用implements包中。2) 接口。ActionListener 接口是系統(tǒng)預定義的接口(特殊的類),在 java.

15、awt.event在 init 方法的最后,用 addActionListener 方法給 input 文本框ActionListener 接口,接口只捕捉控件上的事件。在 Java 程序中, this 表示當前類的對象,作為addActionListener 方法的參數(shù),表示3) 接口方法的接口是當前類使用的。ActionListener 接口中只有一個方法 actionPerformed,ActionListener 接口捕捉到動作事件后,會自動調用該方法,使用時,方法頭不變,只需在方法體中編寫事件響應代碼。參數(shù) e 中存有當前事件源的對象名,用于有多個事件源時,確定當前事件源。Actio

16、nEvent 類5/事件響應 output.setText(input.getText()+,歡迎你!);/接口input.addActionListener(this);Java 程序設計與應用開發(fā)案例在 java.awt.event 包中。1.2獨立運行的問候程序1.2.1程序說明Java Applet 只能嵌入網頁中運行,不能獨立運行,本節(jié)將制作一個能獨立運行的 JavaApplication 問候程序,在窗體上使用、文本框和按鈕控件,采用事件驅動方式。設已有獨立運行的問候程序(MyJavaApplication),且已編譯成功,程序需要在 DOS 控制臺下運行,為方便使用,制作一個運行

17、程序的批處理文件(runhtml.bat)。程序運行結果如圖 1.2 所示。圖 1.2 Application 程序運行結果程序運行時,用戶在上面的文本框(輸入文本框)中輸入后,按 Enter 鍵,下面的文本框(輸出文本框)中就會顯示出相應的問候;單擊【關閉】按鈕,窗體就會關閉,退出程序。1.2.2實現(xiàn)方案設計 Application 窗體的大小為 300200,程序使用 4 個控件:(prompt)、用于輸入的文本框(input)、用于輸出的文本框(output)和按鈕(btn2,后面要增加 btn1),采用系統(tǒng)預定義的流式布局自動設置窗體上控件的位置和大小。程序的整體框架如下:6impor

18、t java.awt.*; import java.awt.event.*;public class MyJavaApplicationpublic sic void main(String args)new MyFrame();class MyFrame extends Frame implementionListenerLabel prompt;第 1 章 Java 語言基礎程序由引入和主類。Application 程序需要引入 java.awt 包中的系統(tǒng)預定義類,因為有事件驅動,所以還要引入 java.awt.event 包中的系統(tǒng)預定義類。Application 程序一般有兩個類:主

19、類(MyJavaApplication,與程序同名)和用戶窗體類(本例為 MyFrame)。在 Application 程序的主類中,一般只含有一個作為程序的 main 方法。main 方法的方法頭是固定的。參數(shù) args 是一個一維字符串數(shù)組,用于存放命令行參數(shù)。通常在 main 方法中只完成一項操作:創(chuàng)建用戶窗體類的對象。用戶窗體類(與 Applet 程序主類類似)一定要繼承系統(tǒng)預定義的 Frame 類(在 java.awt 包中)。因為要處理的是動作事件,所以使用動作接口。在用戶窗體類中,程序使用的控件需要作為域,并且一定要在用戶窗體類中定義構造函數(shù)(作用類似于 Applet 程序主類中

20、的 init 方法),構造函數(shù)也是用戶窗體類的第一入口,用于窗體初始化。因為使用了動作接口,所以一定要編寫接口中的 actionPerformed 方法,用于響應事件。程序的編程要點已在整體框架中標出,在 1.2.3 節(jié)中將會詳細。新建“Java”文件夾,打開 JCreator(也可使用其他的 Java 代碼編輯器或集成開發(fā)工具),上的【New】按鈕,在出現(xiàn)的框中選擇【Files】選項卡,在該選項卡上選單擊擇【Java File】選項,輸入程序名“MyJavaApplication”,并選擇工作位置為“Java”文件夾,單擊【確定】按鈕后進入編輯器。輸入前面的程序整體框架,其中,注釋說明部分的

21、代碼,在 1.2.3 節(jié)中可以查到,當全部代碼輸入完成并檢查無誤后,單擊的【Save】按鈕保存文件。選擇【Builde】【| CompileFile】菜單命令進行編譯,錯誤,可按照編譯提示信息進行修改,然后保存并重新編譯,直到提示“Pros completed”時,編譯成功??梢栽?JCreator 中選擇【Build】|【Execute File】菜單命令測試運行程序,也可以在 DOS 控制臺下進入“Java”目錄,然后使用如下命令運行:C:JBuilder9jdk1.4binjavaMyJavaApplication本例采用 JBuilder 自帶的 JDK,默認安裝路徑為 C:JBuil

22、der9jdk1.4,Java 解釋器在 bin子目錄下,若安裝時指定了其他的路徑或采用獨立的 JDK,則要將其修改為相應的路徑。為方便使用,可以將該 DOS 命令放到一個批處理文件中(設為 runit.bat)。打開記事本,輸入上面的批處理命令,保存時,選擇文件位置為“Java”文件夾,文件類型為“所有文件(*.*)”,文件名為“runit.bat”,文件主名可以是任意的,但擴展名必須是“.bat”。運7TextField input,output; Button btn2;MyFrame()/窗體初始化public void actionPerformed(ActionEvent e)/事

23、件響應Java 程序設計與應用開發(fā)案例行時,在“Java”文件夾下雙擊該批處理文件即可。1.2.3代碼及分析在程序整體框架中,說明編程要點的注釋部分對應的代碼及分析如下。1) 構造函數(shù)Application 窗體默認的布局管理方式是“邊界布局”(BorderLayout),使用方法 setLayout(布局對象)設置布局管理方式。使用 new FlowLayout 創(chuàng)建流式布局對象,執(zhí)行 setLayout 語句后,窗體即為流式布局。2) 接口方法由于有兩個可能的事件源,因而要判斷當前事件源,需要根據當前事件源寫出相應的事件響應代碼。dise()的功能為關閉窗體,System.exit(0)用

24、于使程序正常退出。8/事件源為文本框 if(e.getSource()=input)output.setText(input.getText() + ,歡迎你!);/事件源為按鈕 if(e.getSource()=btn2)dise(); System.exit(0);/調用父類構造函數(shù)并設置窗口標題 super(窗體);/創(chuàng)建控件prompt=new Label(請輸入你的名字:); input=new TextField(6);output=new TextField(20); btn2=new Button(關閉);/設置布局、添加控件 setLayout(new FlowLayout(

25、); add(prompt);add(input); add(output); add(btn2);/接口input.addActionListener(this); btn2.addActionListener(this);/設置窗體寬高setSize(300, 200);/顯示窗口show();第 1 章 Java 語言基礎1.2.4相關知識1. 窗體輸出擴充上例的功能,如圖 1.3 所示,增加【確定】按鈕(btn1),單擊該按鈕,在窗體上直接輸出歡迎信息。圖 1.3 在窗體上直接輸出歡迎信息為了在窗體上直接輸出,必須在用戶窗體類中重寫(覆蓋)系統(tǒng)預定義的 pa方法。pa方法于在窗體上直接

26、輸出,使用時,方法頭不變,只需編寫實現(xiàn)程序功能的方法體代碼即可。pa方法的參數(shù) g 是系統(tǒng)預定義的 Graphics 類(在 java.awt 包中)的對象,代表窗體畫筆。在窗體上輸出文字、圖像或圖形,都要通過 g 調用相應的方法。畫筆的 drawString方法能在窗體上的指定位置輸出字符串。pa方法也是一個方法(第三)。在窗體類中增加的 pa方法如下。其中,字符串變量 s 需要在域部分定義,如下。由于增加了一個按鈕,因而也需要在域部分定義,如下。新增加的按鈕要在構造函數(shù)中創(chuàng)建、添加,并按鈕的前面,因而也需要先添加,代碼如下。接口,由于【確定】按鈕在【關閉】9.btn1=new Button

27、(確定);.add(btn1);.btn1.addActionListener(this);.Button btn1;String s=;public void pa(Graphics g)g.drawString(s,50,120);Java 程序設計與應用開發(fā)案例最后,在接口方法中,添加以下代碼以處理相應的事件。其中,repa的功能是:先清除窗體,再調用 pa新的字符串 s。2. 窗口事件運行前面的程序,單擊窗口標題欄上的窗口關閉按鈕,程序并沒有反應,這是因為:單擊窗口關閉按鈕不屬于動作事件,而屬于窗口事件。窗口事件需要使用窗口接口捕捉,在窗體類頭的最后,用逗號分隔,在逗號后寫出窗口接口名

28、(windowListener)。方法,完成在窗體上輸出內容已更在窗體類構造函數(shù)中,將窗口接口給當前窗體(this)。this.addWindowListener(this);windowListener 接口中有 7 個抽象方法,都要在窗體類中寫出方法體。與單擊窗口關閉按鈕窗口事件對應的是 windowClosing 方法,在其中寫入相應的事件響應代碼。1.3DOS 上的問候程序1.3.1程序說明Java Application 程序也可以不使用圖形界面而使用 DOS 控制臺,本節(jié)將制作一個使用DOS 控制臺輸出的問候程序。設已有 DOS 上的問候程序(MyJavaApplication),

29、且已編譯成功,程序運行結果如圖 1.4所示。10public void windowClosing(WindowEvent e)dise(); System.exit(0);public void windowClosed(WindowEvent e) public void windowOpened(WindowEvent e) public void windowActivated(WindowEvent e) public void windowDeactivated(WindowEvent e) public void windowIconified(WindowEvent e) pu

30、blic void windowDeiconified(WindowEvent e) class MyFrame extends Frame implementionListener,WindowListenerif(e.getSource()=btn1)s=歡迎你!+input.getText()+。; repa();第 1 章 Java 語言基礎圖 1.4 使用 DOS 控制臺的程序運行結果程序運行后,在 DOS 窗口中顯示問候信息。1.3.2實現(xiàn)方案除引入外,程序只有一個主類,主類中只包含 main 方法,在 main 方法中編寫在DOS 窗口中輸出信息的代碼,程序代碼如下。新建“Jav

31、a”文件夾,打開 JCreator(也可使用其他的 Java 代碼編輯器或集成開發(fā)工具),單擊上的【New】按鈕,在出現(xiàn)的框中選擇【Files】選項卡,在該選項卡上選擇【Java File】選項,輸入程序名“MyJavaApplication”,并選擇工作位置為“Java”文件夾,單擊【確定】按鈕后進入編輯器。輸入前面的程序代碼,檢查無誤后,單擊上的【Save】按鈕保存文件。選擇【Build】|【Compile File】菜單命令進行編譯,錯誤,可按照編譯提示信息進行修改,然后保存并重新編譯,直到提示“Pros completed”時,編譯成功??梢栽?JCreator 中選擇【Build】|

32、【Execute File】菜單命令測試運行程序,也可以在 DOS 控制臺下進入“Java”目錄,然后使用如下命令運行:C:JBuilder9jdk1.4binjavaMyJavaApplication本例采用 JBuilder 自帶的 JDK,默認安裝路徑為 C:JBuilder9jdk1.4,Java 解釋器在 bin子目錄下,若安裝時指定了其他的路徑或采用獨立的 JDK,則要將其修改為相應的路徑。1.3.3代碼及分析使用 DOS 窗口的程序需要使用 java.io 包中的系統(tǒng)預定義類;System.out 代表標準輸出流,終端為 DOS 界面;使用 pr ln 方法在 DOS 界面輸出字

33、符串后會換行回車,類似的方法是 pr ,輸出后不換行回車。本例程序也可使用批處理文件運行,但需要在運行命令后面加一條暫停命令:C:JBuilder9jdk1.4binjavaMyJavaApplication pause11import java.io.*;public class MyJavaApplicationpublic sic void main(String args)System.out.prln(o, Java World!);Java 程序設計與應用開發(fā)案例雙擊批處理文件后,程序運行,顯示信息。此時,程序已經運行結束,pause 命令使批處理暫停,按任意鍵可以繼續(xù)運行,批處理

34、結束后,DOS 窗口關閉。1.3.4相關知識1. 輸入單字符可以在程序中使用 System.in.read()語句從鍵盤一個以回車結尾的單字符,返回字符的 Unicode 碼,但該語句在運行時可能出現(xiàn)運行錯誤(異常),要用異常處理語句(trycatch語句)保護。Unicode 碼是 16 位字符編碼,數(shù)據范圍是 065535,是2. 輸入字符串(32 位)的子集??梢栽诔绦蛑惺褂?System.in.read(字節(jié)數(shù)組)語句從鍵盤【Enter】結尾的字符串,并將其存入字節(jié)數(shù)組 cArr 中,該語句在運行時可能出現(xiàn)運行錯誤(異常),要用異常處理語句(trycatch 語句)保護。如下面的程序:

35、程序先輸出提示信息,然后接收用戶輸入的字符串,最后再顯示包含用戶輸入內容的信息。程序運行結果如圖 1.5 所示。圖 1.5 輸入字符串12import java.io.*;public class MyJavaApplicationpublic sic void main(String args)byte cArr=new byte50; String s=;System.out.pr(Enter a string please: ); trySystem.in.read(cArr); s=new String(cArr);catch(Exception e)System.out.prln(Y

36、ouve entered string +s);第 1 章 Java 語言基礎程序中使用的字節(jié)數(shù)組需要預先定義和創(chuàng)建,類型名 數(shù)組名 = new類型名容量;和創(chuàng)建數(shù)組的一般格式如下:在用戶輸入的字符串后,使用 String 類的構造函數(shù)將其轉換為字符串。1.4上的問候程序1.4.1程序說明使用 J2ME 可以編寫程序。本節(jié)將編寫一個簡單機上的問候程序,程序運行機按鈕時,程序結束。結果如圖 1.6 所示,單擊右邊的與【Exit】映像按鈕對應圖 1.6上的問候程序1.4.2實現(xiàn)方案首先, 系統(tǒng)需要安裝 J2ME WTK(J2ME WirelessToolKit 1.0.4.01),默認安裝到“C:

37、WTK104”中。J2ME WTK 的/software/download地址為:使用前先要選擇默認機模擬器,從【開始】菜單中選擇【Defauevielection】工具進行設置,本例選擇【DefaultColorPhone】,設置彩屏J2ME WTK 提供的模擬器較少,可以在 Sun 公司的的顏色為 96128256。的模擬器。到編寫程序(J2ME 程序)需要創(chuàng)建項目,從【開始】菜單中啟動 Ktoolbar,單擊工具欄上的【New Project】按鈕,在新建項目框中輸入項目名(Project Name)和程序名(MIDletClaame),分別設為 MyProject 和MyMIDlet,

38、如圖 1.7 所示。MID 即 Mobile InformationDevice(移動信息設備)的簡稱,J2ME 程序通常也稱為 MIDlet 程序,后綴 let 是小程序的意思。13Java 程序設計與應用開發(fā)案例圖 1.7 新建項目創(chuàng)建項目以后,單擊上的【Build】按鈕進行編譯,由于尚未提供程序,提示編譯失敗,但已在 J2ME WTK 的安裝位置下(C:WTK104)生成了項目框架,如圖 1.8 所示。圖 1.8 項目框架打開 JCreator(也可使用其他的 Java 代碼編輯器),單擊上的【New】按鈕,在出現(xiàn)的框中選擇【Files】選項卡,在該選項卡上選擇【Java File】選項

39、,輸入程序名“MyMIDlet”,并選擇工作位置,為上述項目框架中的“src”文件夾,單擊【確定】按鈕后進入編輯器,輸入如下代碼。14import javax.microedition.midlet.*; import javax.microedition.lcdui.*;public class MyMIDlet extends MIDlet implementsdListenerDisplay disp; TextBox tb;d cmd; public MyMIDlet()disp=Display.getDisplay(this);tb=new TextBox(J2MEex,o!,60,

40、0); cmd=newd(Exit,1,1);mand(cmd); disp.setCurrent(tb);mandListener(this);第 1 章 Java 語言基礎檢查無誤后,單擊的【Build】按鈕進行編譯,上的【Save】按鈕保存文件。返回 Ktoolbar,單擊上錯,則在 JCreator 中修改保存后,再返回 Ktoolbar 編譯。編譯成功后,單擊上的【Run】按鈕運行程序。1.4.3代碼及分析MIDlet 程序主類一定要繼承系統(tǒng)預定義的 MIDlet 類,所以在主類頭上有“extendsMIDlet”,由于程序是事件驅動的,因而還要實現(xiàn)命令接口(dListener)。程

41、序中的disp 是 Display 類的對象,代表虛擬屏幕;tb 是 TextBox 類的對象,代表文本面板;cmd 是d 類的對象,代表映像按鈕。在構造函數(shù)中,先創(chuàng)建虛擬屏幕、文本面板和映像按鈕,然后將按鈕添加到文本面板上,將文本面板設置為虛擬屏幕當前顯示的工作面板,最后給文本面板命令接口。dAction 方法是命令接口中的方法,方法體中是對應【Exit】映像按鈕的事件響應代碼。程序中的引入以及 App、pauseApp、destroyApp 方法可以看作是所有 MDIlet 程序都必須有的格式代碼。1.4.4相關知識在 MIDlet 程序中,使用 TextBox 類的構造函數(shù)創(chuàng)建文本面板,

42、用法如下。new TextBox(String title, String info,其中:第 1 參數(shù):面板標題;第 2 參數(shù):面板中顯示的文本;第 3 參數(shù):文本的容量;s,c)第 4 參數(shù):文本的類型,一般為 0,表示任意文本。使用d 類的構造函數(shù)創(chuàng)建映像按鈕,用法如下:15public void startApp()public void pauseApp()public void destroyApp(unconditional)public voiddAction(d c,Displayable d)destroyApp(false); notifyDestroyed();Java

43、 程序設計與應用開發(fā)案例new其中:d(String t,c ,p)第 1 參數(shù):按鈕顯示的文本;第 2 參數(shù):按鈕的類型,通常為 1,表示自定義類型; 第 3 參數(shù):按鈕的優(yōu)先級,通常為 1,表示最高優(yōu)先級。1.5本 章 小 結所有的 Java 程序都是由引入和主類的,引入是明程序用到的系統(tǒng)預定義類及其位置。程序可以有多個類定義,但必須有且只有一個主類。主類名與文件名(程序名)相同,主類(也只有主類)應是公共的(public),即能夠被外部系統(tǒng)(Java 解釋系統(tǒng))調用,是 class。定義類的Applet 程序主類一定要繼承系統(tǒng)預定義的 Applet 類(在 java.applet 包中)

44、。Application程序一般有兩個類:主類和用戶窗體類。在 Application 程序的主類中,一般只含有一個作為程序的 main 方法,通常在 main 方法中只完成一項操作:創(chuàng)建用戶窗體類的對象;Application 程序的用戶窗體類(與 Applet 程序主類類似)一定要繼承系統(tǒng)預定義的 Frame 類(在 java.awt 包中),繼承的是 extends。如果程序有事件驅動,還應在 Applet 主類頭或 Application 用戶窗體類頭的最后,用implements要使用的接口。在類定義體中,通常是域和方法定義。域是根據所屬類的功能需求,定義需要用到的對象(控件)或全局

45、變量,方法定義(方法的覆蓋)一般是根據所屬類的功能需求,選擇繼承來的方法,這些方法通常是空的或抽象的(沒有方法體),編寫時,方法頭不變,設計(覆蓋)方法體代碼即可。簡單地說,事件驅動的原理是:用接口捕捉事件;接口捕捉到事件后,自動調用其中相應的方法;方法中含有程序員寫入的對事件的響應代碼。事件驅動的編程要點有 3 個:接口、接口和接口方法。Java Application 程序也可以不使用圖形界面而使用 DOS 控制臺。使用 J2ME 可以編寫程序。1.6習題1填空(1) Java 程序主要有獨立運行的和嵌入網頁的。(2) 引入是明程序用到的系統(tǒng)預定義類及其位置(包),引入的是,可以用號代表相

46、應位置中所有的系統(tǒng)預定義類。(3) Applet 程序主類一定要繼承系統(tǒng)預定義的類。(4)接口的是,繼承的是,實現(xiàn)類定義的是。16第 1 章 Java 語言基礎(5) 域是根據,定義需要用到的對象(控件)或全局變量。方法定義一般是根據所屬類的功能需求,選擇方法,這些方法通常是空的或抽象的,編寫時,不變,設計即可。創(chuàng)建控件時可使用控件所屬類中的。(8) 構 造函數(shù) 與 類同名 ,先導調用。于 ,不 能 直接調 用 ,要用 事件驅動的編程要點有 3 個: 、 和。Application 窗體默認的布局管理方式是,Applet 窗體默認的布局管理方式是。為了在窗體上直接輸出,必須重寫(覆蓋)系統(tǒng)預定

47、義的方法。(12) repa方法的功能是:先,再。2設有一個 Applet 程序(MyJavaApplet),如圖 1.9 所示,用戶在上面的文本框中輸入后,按 Enter 鍵,下面的文本框中就會顯示出歡迎信息;單擊【確定】按鈕,則窗體上會顯示出歡迎信息。下面的程序代碼中有 10 處錯誤,找出錯誤并修正。圖 1.9 程序運行結果程序代碼:17import java.applet.*; import java.awt.*; import java.event.*;public class program1 extends AppletLabel prompt;TextField input,ou

48、tput; Button btn;string s=;public void program1()prompt=new Label(請輸入你的名字:); input=new TextField(6);output=new TextField(20); btn=new Button(確定); add(prompt);Java 程序設計與應用開發(fā)案例簡述事件驅動的原理和編程要點。如何在使用 DOS 窗口的程序中輸入單字符和字符串?5構造函數(shù)?在 Application 窗體類的構造函數(shù)中,通常應完成哪些操作?設計一個如圖 1.10 所示的 Applet 程序。圖 1.10 程序運行結果【閱讀材料】在 Java Applet 或 Java Application 程序

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論