2022年第1章程式语言与Java的基础.doc

上传人:de****x 文档编号:73968851 上传时间:2023-02-22 格式:DOC 页数:22 大小:158KB
返回 下载 相关 举报
2022年第1章程式语言与Java的基础.doc_第1页
第1页 / 共22页
2022年第1章程式语言与Java的基础.doc_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《2022年第1章程式语言与Java的基础.doc》由会员分享,可在线阅读,更多相关《2022年第1章程式语言与Java的基础.doc(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第1章:程式語言與Java的基礎1. 請說明什麼是程式與軟體?程式語言的種類?低階和高階程式語言的差異?2. 請比較編譯和直譯程式語言的差異?並各舉出2種程式語言?3. 什麼是Java?其特點為何?為什麼Java是一種跨平台的程式語言,請說明其意義?Java平台是由_和_元件組成。4. 請簡單說明JVM是什麼,並且使用圖例說明Java程式的執行過程?5. 請說明Java語言的開發環境?並且分別列出命令列和Gel整合開發工具建立Java應用程式的步驟?6. Java原始程式碼的副檔名:_,編譯成類別檔的副檔名:_。7. 請完成以下Java程式輸出大家好!生日快樂字串,如下所示:class Tes

2、t public static void main(String args) _ 8. 請問習題7.的Java程式儲存的全名為:_,假如輸出字串改為兩行大家好!和生日快樂,請再次完成Java程式。9. 繼續習題8,在命令提示字元視窗執行編譯的指令:_,編譯成的Bytecode檔案名稱:_,執行Java程式的指令:_。10. 在安裝好Gel整合開發工具後,使用Gel建立Java程式輸出以下”*”字元顯示的圖形,如下所示:* * * * *第2章:變數與運算子1. 簡單說明Java的命名原則?2. 說明什麼是程式中的變數?Java程式如何宣告變數?3. 請問以下哪些是Java的保存字,如下所示:a

3、pple、float、7up、grandTotal和boolean4. 請指出以下哪些是Java合法的變數名稱,如下所示:2bad、zero、lastValue、year2006、TWO-DOLLARS、team、2Int、int、I、j5. 請寫出Java的資料型態分為哪兩種?8種根本資料型態是什麼?6. 請說明什麼是運算式?以下Java運算子的功能,如下所示: - != 7. 請指出以下哪些運算式是不正確的,假如正確請計算其值,如下所示: 5 + 7 (5 * 6)/2 (-12 + (12 + 8)/2 ) * 4 -20 + (14 + 6)/2 ) * 3 (30 - 15) / 3

4、 34 - 14) / (20 - 5 ) ( (34 - 14) / (13 + 7 ) ) ( 1/2 + 3.5) * 2.0 (2 - 6) / 2 + 108. 請建立Java程式計算以下運算式的值,如下所示: 2X2 -4X + 1,X = 3.0、4.0和2/3 a2 + b,a = 2.0、4.0和2/3,b = 10.0、5.0和12.0 3X2 -8X + 4,X = 2.0、4.0和2/39. 圓周長的公式是2*PI*r,PI是圓周率3.1415,r是半徑10, 20, 50, 請設計Java程式使用常數定義圓周率,然後計算各半徑的圓周長。10. 請建立Java程式將以下

5、的八和十六進位值轉換成十進位值顯示,如下表所示:0277、0xcc、0xab、0333、0555、0xff11. 現在有250個蛋,一打是12個,請使用Java程式計算250個蛋是幾打,還剩下幾個蛋。12. 某人在銀行存入150萬,利率是4%,假如每年的利息都繼續存入銀行,請使用Java程式計算在15年後,本金在利息一共有多少錢。第3章:流程操纵結構1. 請說明什麼是結構化程式設計?其主要觀念有哪3項?流程操纵的種類有幾種?2. 單一if/else指令敘述共有_種選擇。寫出以下關係與條件運算式值是true或false,如下所示:(1) 2 + 3 = 5 (2) 36 = 3 * 3 (4)

6、2 + 1 = (3 + 9) / 4 (5) 12 = 2 + 3 * 2 (6) 2 * 2 + 5 != (2 + 1) * 3. 請寫出以下條件敘述程式片斷的輸出結果? (1) int sum = 8 + 1 + 2 + 7; if ( sum = 10 ) System.out.println(危險: ); System.out.println(水太深. ); 4. 請說明while和do/while迴圈的差異?並舉例說明是否會影響程式的執行結果5. 請寫出以下main()方法的輸出結果,如下所示:(1) public static void main(String args) in

7、t n = 1; while (n = 64) n = 2*n; System.out.println(n); (2) public static void main(String args) int total = 0; for (i = 1; i =2,請設計static void fibonacci()方法顯示費式數列,參數是顯示數字的個數。10. 請寫出以下遞迴方法printMoney(5)的執行結果,如下所示:static void printMoney(int level) if (level = 0) System.out.print($); else System.out.pr

8、int(); 11. 在整數A與B中,假設:0=A且0B,mod()方法的規則如下:. mod(A, B) = A,if A = B請建立Java的mod()遞迴方法計算mod(2, 5)和mod(17, 5)的值 12. 請建立遞迴方法num(),計算num(5)、num(10)的值,其定義如下所示:num(1) = 1,if X = 1num(X) = num(X-1) + 2X - 1,if X 113. 請試著自行以盤子數為1、2、3時,分別一一繪出河內塔問題的解答步驟,在3根木樁各擁有的盤子數,以便歸納出解決問題的3個步驟?第5章:類別與物件1. 請說明物件導向程式語言的3種特性?什

9、麼是物件基礎程式語言?UML是什麼?2. 請說明什麼是物件?物件擁有哪3種特性?並且舉例說明物件與類別的關係?3. Java是使用_運算子來建立物件,假如一個類別型態的物件變數參考的不是物件,我們稱為_(Null Reference),在Java确实是使用指定敘述指定成_。4. 請舉例說明private和public兩種修飾子的用处和差異?什麼是工具方法(Utility Methods)?5. 請簡單說明什麼是建構子?其目的和用处?6. 請說明實例變數/方法和類別變數/方法的差異?7. 請在Date類別完成setDate()成員方法,如下所示:public boolean setDate(in

10、t day, int month, int year) if ( validDate(day, month, year) ) _.day = day; _.month = month; _.year = year; return true; else return false;8. 請修正第5-2-3節的程式範例,將validDate()方法改為類別方法。9. 請使用Java語言寫出Box類別的宣告,這是一個盒子物件,能够計算盒子體積與面積,並且繪出Box類別的UML類別圖,如下所示: 成員變數:width、height和length儲存寬、高和長。 建構子:Box (double width

11、, double height, double length)。 成員方法:double volume()計算體積、double area()計算面積。 10. 請建立Time類別宣告和繪出UML類別圖,Time類別能够建立儲存時間資料的物件,其描绘如下所示: 成員變數:hour、minute和second儲存小時、分和秒。 建構子:Time(int hour, int minute, int second)。 成員方法:設定setXXX()和取出int getXXX()時間資料的方法、printTime()方法顯示時間資料、validateTime()方法能够檢查時間資料。11. 請修正第C

12、h5_4.java程式,使用習題10的Time類別新增客戶的出生時間。12. 在第5-5節使用類別變數儲存學生計數,請建立Counter計數類別宣告,擁有成員變數value,2個方法increment()和decrement()分別將計數加一和減一,getCounter()方法获得目前的計數,修正Ch5_5.java使用Counter類別記錄學生人數。13. 請建立Books圖書資料類別,成員變數code、title、author和price成員變數儲存書號、書名、作者和書價,code、title和author是String物件,除了設定、取出和列印圖書資料的方法外,再加上圖書本數和總價的類別

13、變數,計算圖書的平均價格。14. 請建立名片資料的Cards類別,擁有name、age、phone和email成員變數儲存姓名、年齡、電話和電子郵件資料,phone變數是參考另一個類別PhoneList的實例,PhoneList類別擁有成員變數homephone、officehone和cellphone儲存住家、公司和手機電話,最後建立printCard()方法顯示名片資料。15. 請按照以下UML類別圖寫出Java語言的類別宣告,如下圖所示:第6章:繼承、抽象類別和多形1. 請使用圖例說明什麼是物件導向的繼承觀念?Java不支援_繼承。2. 請說明什麼是覆寫和隱藏方法,請使用表格列出其差異?

14、3. 請簡述常數和抽象類別的目的?常數類別是使用_關鍵字宣告,抽象類別是使用_關鍵字宣告。4. 現有3個類別Computer、AppleComputer和AcerComputer,請繪出這3個類別的類別架構?哪一個類別能够宣告成抽象類別?5. 請舉一個實例說明Java語言物件導向的多形觀念?6. 請寫出以下類別繼承架構中的父類別、子類別和兄弟類別,如下所示: 類別甲的子類別_。 類別丙的兄弟類別_。 類別戍的父類別_。7. 請完成Java的Test與MidTerm的類別宣告,如下所示:class Test public int num; public String name; public T

15、est(int num, String name) public void printTest() class MidTerm extends Test private int numOfStudents; public MidTerm(int no, String name, int numOfStudents) _(no, name); _.numOfStudents = numOfStudents; public void printMidTerm() _.printTest(); System.out.println(_.name); 8. Card抽象類別有繼承的Birthday、V

16、alentine和Holiday子類別,請寫出以下程式碼呼叫greeting()方法實際是哪一個子類別的物件,如下所示:(1) Card crd = new BirthDay(江小魚, 36); crd.greeting();(2) Card crd = new Vaentine(“小龍女”, 16); crd.greeting();(3) Card crd = new Holiday(“陳會安”); crd.greeting();9. 繼續習題8,請完成以下Java程式碼,如下所示:_ c;c = new Valentine(陳小安, 14) ;c.greeting();c = new Ho

17、liday(江大魚) ; c.greeting();10. 請建立Bicycle單車的抽象類別,內含色彩、車型和車價等資料,然後繼承抽象類別建立RacingBike(競速單車),新增幾段變數的成員變數和顯示單車資訊的方法,並且繪出UML類別圖。11. 在程式範例Ch6_3.java的抽象類別Shape新增計算周長的perimeter()方法。12. 請在第6-3節的程式範例Ch6_3.java新增繼承抽象類別Shape的Polygon多角形,並且新增area()方法。13. 請建立Vehicle抽象類別,然後建立Cars(轎車)、Trucks(卡車)子類別,多形的show()方法顯示車輛資料。

18、14. 請建立Test抽象類別,然後建立MidTerm(期中考)、Final(期末考)和Quiz(小考)子類別,多形的print()方法能够顯示各次考試的最商和平均成績。第7章:巢狀類別、多重繼承和套件1. 請使用圖例來說明Java巢狀類別?2. 假如Java巢狀類別的外層類別是Students,內層類別是Exams,編譯成的類別檔案.class:_和_。3. 請說明多重繼承的觀念和Java介面?介面是由_關鍵字進行宣告,其組成是什麼?4. 請問介面是否包含方法的程式碼區塊?介面是否能够繼承?類別是否能够實作多個介面?以下介面宣告是否正確?interface Tax double TaxRat

19、e = 0.06; double calTax(); 5. 假如IPrint介面繼承自IShow,請寫出其宣告語法?假如類別Final繼承自Test類別且實作ShowInterface,請寫出其宣告語法?6. 請說明什麼是Java套件?什麼是Java API。7. 請將第6-3節的程式範例Ch6_3.java改成Ch6_3的套件。8. 請建立Java巢狀類別內層和外層的建構子,內層建構子指定value值,next為null,外層建構子在建立好ListNode物件後,將front參考到此物件,如下所示:class LinkedList ListNode front; ListNode int v

20、alue; ListNode next; public ListNode(int value) public LinkedList(int value) 9. 在Ch7_3_4.java取消最後2列程式碼的註解測試編譯錯誤,假如將Point類別的x和y改為public是否仍會產生錯誤,為什麼?10. 假如在習題9改為private是否會產生錯誤,為什麼?11. 假如在習題9刪除Point類別成員變數x和y的protected修飾子,然後重新編譯Point.java和Ch7_3_4.java是否會產生錯誤,為什麼?12. 請使用表格說明Java存取修飾子?在同一個套件能够存取的修飾子有哪些?在同

21、一個類別能够存取的修飾子有哪些?第8章:字元、字串、數值類別與陣列1. 請問String物件能够說是一種唯讀或唯寫字串?一共能够新增多少個字元到StringBuffer物件?當建立StringBuffer 物件sb1和sb2後,請寫出比較這2個物件的Java程式碼?2. 請說明什麼是陣列(Array)?Java二維陣列的建立有哪2種方法?3. 請寫出宣告float浮點數一維陣列myArray的語法,元素有10個?然後寫出以下陣列宣告各元素的索引值序列值,如下所示:int array = 2, 4, 6, 8 4. 請寫出以下Java程式碼片斷的執行結果,如下所示:(1) int arr = 1

22、, 3, 5, 7 ; System.out.println(arr0 + arr2);(2) int arr = 2, 4, 6, 8 ; arr0 = 13; arr3 = arr1; System.out.println(arr0 + arr2 + arr3);5. 現在有字串String物件,請寫出以下各方法的輸出結果,如下所示:String str = Java2程式設計範例教本2e-陳會安; str.length()。 str.charAt(10)。 str.substring(11)。 str.substring(5, 9)。6. 請說明以下Java方法和程式碼片斷的用处,如下所

23、示:(1) String aMethod(String str) if (str = null) return null; String result = ; for (int i = 0; i str.length; i+) result = result + stri; return result; (2) double temps = new double365; for ( i=0; i temps.length; i+) tempsi = new double24;7. 請設計字串處理方法(不能使用String和StringBuffer物件一样功能的方法),如下所示: int str

24、Len(String):获得字串長度。 String strInsert(String1, String2, int):插入字串,將String2插入String1的位置int。 String strReplace(String1, String2, int):取代字串,將String1位置int開始取代成String2。8. 請設計Java程式從命令列輸入12小時制的時間字串,在轉換後,輸出成24小時制的時間資料。9. 請分別建立getMax()和getMin()方法能夠在int陣列中找出最大值和最小值,並且設計測試的Java程式,使用亂數產生陣列值,其範圍為100500。10. 請修正Ch

25、8_6_1.java程式碼,將tips陣列的初值改為使用命令列參數傳入,陣列尺寸視參數的個數而定。11. 請設計Java程式擁有3 X 3的二維陣列,陣列值是使用亂數產生,其範圍是50100,然後計算每一列的總和和平均,並且計算2個對角線陣列元素的總和。12. 請建立Java程式擁有三維的int整數陣列,陣列值是使用亂數產生,然後使用迴圈將陣列值都顯示出來。第9章:Java Applet與事件處理1. 請說明Java Applet執行環境?為什麼Java Applet沒有main()方法?Java Applet程式架構是繼承_類別。2. 現在有一個MyApplet.class的Java App

26、let,其尺寸為200 X 200,請寫出HTML文件所需的HTML標籤,以便插入此Java Applet?3. 在Java Applet匯入_套件是為了获得Applet類別,匯入_套件是為了获得繪圖元件AWT。4. 請說明以下程式碼的目的,如下所示:inc = Integer.parseInt(getParameter(INC);offset = Integer.parseInt(getParameter(OFFSET);5. 請使用圖例說明AWT元件的事件處理架構?什麼是事件物件(Event Objects)?6. 請說明MouseEvent類別和事件傾聽者物件MouseListener的

27、關係,並且完成以下MouseEvent事件處理程式架構,如下所示:import java.applet.Applet;import java.awt.Graphics;import _public class MyApplet extends Applet implements _ public void paint(Graphics g) public void init() _; public void mouseClicked(MouseEvent evt) public void mouseEntered(MouseEvent evt) public void mouseExited(

28、MouseEvent evt) public void mousePressed(MouseEvent evt) public void mouseReleased(MouseEvent evt) 7. 請設計Java Applet程式顯示使用HTML標籤傳遞的字串內容,例如:讀者姓名,而且在文字外有一個藍色的方框。8. Graphics類別的drawLine()方法能够繪出線條,4個參數分別為2個端點的(x, y)座標,請建立Java Applet程式測試以下二層迴圈繪出的圖形,如下所示:public void paint(Graphics g) for (int i=10; i = 200

29、; i = i+50) for (int j = 10; j = 200; j = j+50) g.drawLine(i,10,j,60);9. 請建立Java Applet程式使用drawRect()方法繪出重疊的3個正方形,起點是(10, 10),間隔5,長寬各為100,色彩分別為藍、綠和紅,各正方形的兩個對角線使用drawLine()方法繪成大X形。10. 請建立Java Applet繪出一個非常大的”*”符號,這是由3條線穿插組成的圖形?並且試著使用繪圖方法繪出非常大的”%”符號?11. 請建立Java Applet繪出10個橢圓形,橢圓形是使用亂數获得左上角座標和長寬?12. 請建立

30、Java Applet當按下鍵盤按鍵時,顯示整數的按鍵值,請使用以下方法获得按鍵值,如下所示:int key = evt.getKeyCode();13. 請編譯和測試書附光碟Ch09/Ch9_5_5.java和Ch9_5_5.htm的Java Applet程式範例,在輸入欄位內容後,檢視其執行結果?14. 請建立Java Applet使用AWT元件建立輸入使用者資料的註冊表單,欄位請自訂,在輸入使用者資料後,顯示使用者輸入的資料。第10章:Swing套件的容器元件與版面配置1. 請說明Java的Swing套件是什麼?並且使用圖例說明Swing應用程式的根本架構?2. 請完成以下TestFra

31、me類別Swing應用程式的程式碼,如下所示:import javax.swing.*;import java.awt.*;import java.awt.event.*;public class TestFrame extends _ public static void main(String args) _ app = new _(); app.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent evt) System.exit(0); ); app._(300,100); / 設定視窗尺

32、寸 app._(true); / 顯示視窗 3. 請說明什麼是事件改編者類別Event Adapter?並且以實例比較和事件傾聽者類別的差異?4. 請問Swing元件最上層容器類別有哪3種:_、_和_。5. Swing套件不能直截了当將元件新增到JFrame或JApplet,而是需要新增到稱為_的容器物件。6. 請簡單說明Java版面配置治理員的用处?JComponent類別的_方法能够替元件新增框線。7. 請建立Swing應用程式,使用JOptionPane類別的showMessageDialog()方法顯示擁有錯誤圖示的錯誤訊息對話方塊,如下所示:JOptionPane.showMessa

33、geDialog(jpane, 對不起!您的答案是錯誤的, 錯誤訊息, JOptionPane.ERROR_MESSAGE);8. 請建立Swing應用程式,使用BorderLayout邊界式版面配置編排5個JLabel元件,每一個JLabel元件是使用JLabel.CENTER常數置中對齊,如下所示:c.add(new JLabel(北),JLabel.CENTER), BorderLayout.NORTH);c.add(new JLabel(中),JLabel.CENTER), BorderLayout.CENTER);c.add(new JLabel(西),JLabel.CENTER),

34、 BorderLayout.WEST);c.add(new JLabel(南),JLabel.CENTER), BorderLayout.SOUTH);c.add(new JLabel(東),JLabel.CENTER), BorderLayout.EAST);9. 在習題8的JLabel元件外新增框線色彩,北是紅色,南是綠色、西是黃色、東是藍色,中是白色框線。10. 請建立Swing應用程式,使用GridLayout格子式版面配置,以2列3欄編排習題8的5個JLabel元件。11. 請修正Ch10_1_2.java程式範例,新增JButton按鈕元件切換顯示視窗背风光彩為灰色或白色。12.

35、請建立Swing應用程式,新增JPanel元件外的標題框線,框線是藍色,標題文字位在下方置中對齊,如下所示:TitledBorder titledLine = BorderFactory.createTitledBorder(redLine, 標題,TitledBorder.CENTER,TitledBorder.BOTTOM);13. 請建立Swing應用程式擁有3個JButton按鈕和1個JLable元件,這是猜數字大小遊戲,首先使用亂數產生3個114之間的整數,指定每一個按鈕一個整數,然後猜一猜每一個按鈕是比7大,還是比7小,按下按鈕,就能够在JLabel元件顯示此按鈕的整數值。14.

36、請修正習題11的Swing應用程式,增加4個JButton按鈕,按一下按鈕能够分別顯示紅、綠、藍和灰色的背风光彩。第11章:Swing的圖形介面元件1. Swing套件的大部分圖形介面元件都是繼承自_類別。2. JButton元件需要新增_介面才能實作_方法,以便获得使用者是否按下按鈕。3. 請比較JCheckButton和JRadioButton元件的差異?4. 請建立Swing應用程式新增JTextArea元件,替每一種字型取一個名稱後,然後新增JRadioButton元件選擇字型物件,使用setFont(Font)方法設定文字區域顯示的字型。字型物件Font的陣列,如下所示:Font f

37、ont = new Font5;font0 = new Font(Serif, Font.BOLD, 14);font1 = new Font(SansSerif,Font.BOLD+Font.ITALIC,24);font2 = new Font(標楷體, Font.PLAIN, 20);font3 = new Font(新細明體, Font.PLAIN, 30);font4 = new Font(細明體, Font.ITALIC, 36);5. 請建立雙向溫度轉換的Swing應用程式,2個JTextField元件分別能够輸入攝氏和華氏溫度,只需輸入任何一種溫度,按下JButton元件的轉換

38、按鈕,就能够攝氏轉成華氏,或華氏轉成攝氏溫度。6. 請擴充程式範例Ch11_1_5.java,新增JList元件儲存刪除的選項,現在刪除按鈕並不是刪除選項,而是將選項新增到新建立的JList元件,反之在新建立的JList元件刪除選項,將會回到原來的JList元件。7. 請建立猜數字遊戲的Swing應用程式,執行功能表遊戲開始指令開始遊戲,程式使用亂數產生1100之間的整數,然後在JTextField元件輸入整數,就能够在JLabel元件顯示輸入值太大或太小,直到猜中為止。8. 請建立字數計算的Swing應用程式,內含JTextArea和JButton元件,當使用者在JTextArea輸入文字內容後,按下JButton按鈕,就能够顯示JOptionPane訊息視窗,內含使用者輸入多少列文字和多少個中英文字母。9. 請建立最正确體脂肪BMI計算機的Swing應用程式,分別使用JSlider元件選取身高H(公尺)和體重W(公斤),然後使用W/H2公式計算和

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁