一套練習題搞定JAVA基礎
類型一(整個程式就一個類,這個類沒有成員變量,隻有靜态的成員方法):請編寫一個公共主類 ExamClass,并在該類中實作下列函數:
public static double getSqrt(double x)
功能:求 x 的平方根。
例如:
(1)若 x = 1.0,則傳回值為 1.0
(2)若 x = 9.0,則傳回值為 3.0
(3)若 x = 121,則傳回值為 11.0
(4)若 x = 0.25,則傳回值為 0.5
編寫 main 函數,對實作的功能進行驗證。
類型一(整個程式就一個類,這個類沒有成員變量,隻有靜态的成員方法):請編寫一個公共主類 ExamClass,并在該類中實作下列函數:
public static int sumOdd(int[] a)
功能:将數組 a 中的所有的奇數元素的和求出傳回。
例如:
(1)若 a = {},則結果為 0
(2)若 a = {1},則結果為 1
(3)若 a = {1, -3, 5, -5, 2},則結果為 -2
(4)若 a = {-2, 34, 76, 51, 0},則結果為 51
編寫 main 函數,對實作的功能進行驗證。
類型一(整個程式就一個類,這個類沒有成員變量,隻有靜态的成員方法):請編寫一個公共主類 ExamClass,并在該類中實作下列函數:
public static int[] generateData(int n, int max)
// 功能:随機産生n個絕對值在區間(0,max]中且正負随機的整數。
public static void moveData(int[] data)
// 功能:将data中的負數全部移到數組的左邊,正數全部移到數組的右邊。
編寫 main 函數,對實作的功能進行驗證。
類型二(整個程式有多個類,接口,類和接口之間有繼承和實作的關系,涉及到方法的重載、重寫等用法):請按以下要求編寫程式:
(1) 定義包 exam,并将下面要求實作的類和接口都定義在這個包中。
(2) 定義一個抽象的動物類 Animal,要求如下:
1)一個受保護的 String 類型的成員變量 name(表示動物名稱)。
2)一個受保護的 double 類型的成員變量 weight(表示動物重量)。
3)一個公共的含有兩個參數(String name, double weight)的構造方法,用來給兩個成員變量指派。
(3) 定義一個接口 Flyable,其中含有一個描述如何飛翔的方法:String fly()。
(4) 定義一個抽象的繼承 Animal 類且實作 Flyable 接口的會飛的鳥類 FlyableBird,要求如下:
1) 一個受保護的 boolean 類型的成員變量 migratory(表示是否候鳥)。
2)一個受保護的 double 類型的成員變量 height(表示飛的高度)。
3)一個公共的含有四個參數的構造方法(String name, double weight, boolean migratory, double height),用來給四個成員變量指派。
(5) 定義一個繼承 FlyableBird 類的非抽象的麻雀類 Sparrow,要求如下:
1)一個公共的含有三個參數的構造方法(String name, double weight, double height),實作分别給四個成員變量指派為 name、weight、false、height。
2) 實作 fly 方法,傳回值為:“我是能飛y米高的x。”,其中的 y 是指 height 的值(保留 2 位小數),x 是指 name 的值。
例如:若 height = 10.5,name = “小雀”,則傳回值為:“我是能飛10.50米高的小雀。”
(6) 定義公共主類:ExamClass,并在其中編寫 main 方法,自行驗證程式的正确性。
類型二(整個程式有多個類,接口或抽象類,類和接口(抽象類)之間有繼承和實作的關系,涉及到方法的重載、重寫等用法):
1)定義一個抽象類ClosedFigure類,表示閉合圖形類,它有一個成員變量String shape(表示是哪一種閉合圖形),兩個抽象方法public abstract double area();(表示閉合圖形可計算面積)/ public abstract double perimeter();(表示閉合圖形可計算周長)
2)定義一個非抽象的Oval類,表示橢圓圖形類,它需要繼承ClosedFigure類,它有兩個成員變量double aRadius,double bRadius(分别表示橢圓的長軸和短軸);同時要重寫從父類中繼承的抽象方法,描述具體的求橢圓的面積和周長;一個構造方法初始化長短軸。
3)定義一個非抽象的Rectangle類,表示矩形類,它需要繼承ClosedFigure類,它有兩個成員變量double width,double height(分别表示矩形的長和短);同時要重寫從父類中繼承的抽象方法,描述具體的求矩形的面積和周長;一個構造方法初始化長和寬;
4)定義主類ExamClass類,把主方法定義在這個類中,建立Oval和Rectangle對象測試一下。
類型三(視窗程式設計,涉及到視窗的建立、元件變量名的更改、屬性的設定,事件響應等操作):建立一個繼承自 JFrame 的窗體類 ExamClass,實作下列操作:
(1)視窗标題為“文字轉移”,首選尺寸(preferredSize)為 [450, 200];
(2)添加一個菜單欄,菜單欄上放置一個菜單,顯示文本為“檔案”,變量名為“JMenuFile”;
(3)在檔案菜單中添加兩個菜單項:
1)第一個顯示文本為“打開”,變量名為“jMenuItemOpen”;
2)第二個顯示文本為“退出”,變量名為“jMenuItemExit”;
(4)添加第一個文本字段,命名為“jTextFieldFrom”;
(5)添加第二個文本字段,命名為“jTextFieldTo”,背景為藍色,前景為黃色,不能編輯;
(6)添加一個按鈕,顯示文本為“轉移”,變量名為“jButtonMove”;
(7)分别給變量 jTextFieldFrom、jTextFieldTo、jButtonMove 添加 get 函數,内容如下;
public JButton getjButtonMove() {
return jButtonMove;
}
public JTextField getjTextFieldFrom() {
return jTextFieldFrom;
}
public JTextField getjTextFieldTo() {
return jTextFieldTo;
}
(8)給按鈕 jButtonMove 添加監聽 Action 事件的處理函數,功能是把 jTextFieldFrom 中輸入的文字轉移到 jTextFieldTo 中,并且将jTextFieldFrom中的内容置為空。