[0837]作業(yè)《面向對象程序設計》
《[0837]作業(yè)《面向對象程序設計》》由會員分享,可在線閱讀,更多相關《[0837]作業(yè)《面向對象程序設計》(35頁珍藏版)》請在裝配圖網上搜索。
1 閱讀下面的程序 該程序運行的輸出結果是 c 1 A eace 2 B PEACE 3 C ecaep 4 D ECAEP 2 閱讀下面的程序 該程序運行的輸出結果是 D 1 A 0123456789ABCDEF 2 B ABCDEF0123456789 3 C 0123456789abcdef 4 D fedcba9876543210 3 閱讀下面的程序 該程序運行的輸出結果是 D 1 A 1 2 2 4 8 2 B 2 2 4 8 32 3 C 1 4 4 16 64 4 D 1 2 6 24 120 4 閱讀下面程序 該程序運行的輸出結果是 B 1 A sum 6 2 B sum 32 3 C sum 64 4 D sum 12 5 從開始執(zhí)行到執(zhí)行結束 小應用程序經歷的 3 個狀態(tài)分別是 C 1 A 初始態(tài) 就緒態(tài) 結束態(tài) 2 B 就緒態(tài) 運行態(tài) 停止態(tài) 3 C 初始態(tài) 運行態(tài) 停止態(tài) 4 D 就緒態(tài) 運行態(tài) 休眠態(tài) 6 下列關于 Java 小應用程序 Applet 的說法中 正確的是 A 1 A java applet Applet 類是所有 Java 小應用程序的基類 2 B Java 小應用程序不需要編譯 3 C Java 小應用程序也需要 main 方法 4 D Java 小應用程序必須實現 ActionListener 接口 7 Swing 的三個頂層容器分別是 B 1 A JApplet JPanel JWindow 2 B JDialog JApplet JFrame 3 C JApplet JFrame 4 D JMenu 5 E JFrame JPanel JTextArea 8 把容器劃分為東 西 南 北 中 5 個區(qū)域的布局管理器是 D 1 A BoxLayout 2 B FlowLayout 3 C ardLayout 4 D BorderLayout 9 下列語句序列執(zhí)行之后 b1 b2 b3 b4 的值分別是 C String s1 peace String s2 new String s1 String s3 s2 String s4 new String PEACE boolean b1 s1 s2 boolean b2 s1 equals s2 boolean b3 s3 s2 boolean b4 s4 equals s3 1 A true true false false 2 B false true true true 3 C false true true false 4 D false true false false 10 下列構造 String 的語句中 不正確的是 D 1 A String str2 2 B String str1 new String 3 C String str4 123 4 D String str3 new String 123 11 下列關于構造方法的說法中 不正確的是 B 1 A 構造方法用于創(chuàng)建類的實例 2 B 構造方法不可以重載 3 C 構造方法不具有返回值類型 4 D 構造方法名必須和類名相同 12 既能作為類的修飾符 也能作為類成員的修飾符的是 A 1 A public 2 B extends 3 C void 4 D static 13 執(zhí)行完下列語句后 變量 x 的值是 D int x 7 y 10 switch x y case 0 x case 7 x y case 14 x y break default x y 1 A 8 2 B 70 3 C 80 4 D 90 14 以下由 for 語句構成的循環(huán)的執(zhí)行次數是 D for int i 0 ijava IO 計算矩形面積 請輸入長 1 請輸入寬 計算矩形面積是 637 答 因為 System in read 接收的是字節(jié) 0 255 當輸入字符 1 以后 其實返回的是 ASCII 碼 也就是 49 然后你又按了個回車 回車的 ASCII 碼是 13 所以 結果相當于 a 49 b 13 49 13 637 32 問 下面的 Java 程序 打印結果是什么 public class Test public static void changeStr String str str welcome public static void main String args String str 1234 changeStr str System out println str 答 1234 33 問 下面的 Java 程序 編譯時會報什么錯誤 class SuperClass public void fun class SubClass extends SuperClass private void fun System out println SubClass fun 答 錯誤之處 SubClass 中的 fun 無法覆蓋 SuperClass 中的 fun 正在嘗試指定更低的訪問權限 為 public private void fun 34 問 下面的代碼是否能輸出 wangke try System exit 0 finally System out println wangke 答 不會輸出 wangke 在 try catch finally 結構中 如果執(zhí)行到 try 代碼段或 catch 代碼段中的 return 語句 則先運行 finally 代碼段 再運行 return 語句 如果執(zhí)行到 try 代碼段或 catch 代碼段中的 System exit 0 語句 則直接退出程序 即這時 finally 代碼段不會被執(zhí)行到 35 問 String s new String xyz 創(chuàng)建了幾個 String Object 答 兩個對象 一個是 xyx 一個是指向 xyx 的引用對象 s 36 問 下面的 Test java 程序 有哪兩處錯誤 Class Test void f public int i 答 錯誤 1 Class 應改為 class 錯誤 2 public int i 應改為 int i 局部變量不能用權限修飾符 static 修飾 37 問 int count 10 count count System out println count 能否通過編譯 打印 輸出是多少 答 可以通過編譯 打印輸出 21 int count 10 count count 相當于 count count count System out println count 輸出 21 38 問 下面的 Test java 程序 輸出結果是 derive 嗎 class base private void print 注意 private 修飾 System out println base public void doprint print class derive extends base private void print 注意 private 修飾 System out println derive class Test public static void main String args base b new derive b doprint 答 不是 輸出結果是 base 39 閱讀下面的程序 寫出程序運行的輸出結果 public class Test2 public static char method char ch if ch A i s1 s1 method s charAt i System out println s1 答 程序運行的輸出結果是 fedcba9876543210 40 閱讀下面程序 并回答問題 1 try 塊中包含的哪些語句或表達式可能拋出異常 2 流 DataOutputStream 和 DataInputStream 常被用于何種操作 3 假定文件 out txt 中原本沒有任何數據 這段程序執(zhí)行完成后 文件 out txt 的內容是 什么 程序在控制臺窗口輸出什么 import java io public class Test4 public static void main String args try DataOutputStream dout new DataOutputStream new FileOutputStream out txt for int i 0 i 10 i dout writeInt 0 i dout close DataInputStream din new DataInputStream new FileInputStream out txt for int i 0 i 10 i System out print din readInt 0 din close catch IOException e System err println 發(fā)生異常 e e printStackTrace 答 問題 1 new FileOutputStream out txt dout writeInt 0 i dout close new FileInputStream out txt din readInt din close 問題 2 常被用于讀取與存儲 讀寫或輸入 輸出 基本數據類型的數據 問題 3 文件 out txt 的內容是 0 1 2 3 4 5 6 7 8 9 程序在控制臺窗口輸出 0 1 2 3 4 5 6 7 8 9 41 Java AWT 程序設計 在窗口中畫出三個 TextField 前兩個用于接收用戶輸入的兩個 整數 第三個用于顯示相加和 一個加號 Label 一個等于號 Button 當按下 Button 時 將相加之和放到第三個 TextField 中 注意 不允許使用內部類 import java awt import java awt event public class TFMath public static void main String args new TFFrame launchFrame class TFFrame extends Frame TextField num1 num2 num3 public void launchFrame num1 new TextField 10 num2 new TextField 10 num3 new TextField 15 Label lblPlus new Label Button btnEqual new Button btnEqual addActionListener new MyMonitor this setLayout new FlowLayout add num1 add lblPlus add num2 add btnEqual add num3 pack setVisible true class MyMonitor implements ActionListener TFFrame tf null public MyMonitor TFFrame tf this tf tf public void actionPerformed ActionEvent e int n1 Integer parseInt tf num1 getText int n2 Integer parseInt tf num2 getText tf num3 setText n1 n2 42 閱讀下面的程序 寫出輸出結果 public class MyException public static void throwException System out println 產生并拋出 ArithmeticException 類型的異常 throw new ArithmeticException public static void catchArrayException try throwException System out println 在 try 語句塊中的多余語句 catch ArrayIndexOutOfBoundsException e System err println 方法 catchArrayException 捕捉到異常 finally System out println 方法 catchArrayException 的 finally 語句塊 System out println 方法 catchArrayException 運行結束 public static void main String args try catchArrayException catch ArithmeticException e System err println 方法 main 捕捉到異常 finally System out println 方法 main 的 finally 語句塊 System out println 異常處理結束 答 輸出為 產生并拋出 ArithmeticException 類型的異常 方法 catchArrayException 的 finally 語句塊 方法 main 捕捉到異常 方法 main 的 finally 語句塊 異常處理結束 43 問 下面語句中的錯誤都是在 Java 數據類型轉換中的易錯點 分析語句的錯誤原因并 改正 1 float f1 0 1 2 long l1 12345678 l2 8888888888 3 byte b1 1 b2 2 b3 129 4 byte b b1 b2 5 int i 1 i i 0 1 有錯 6 char c1 a c2 125 char c c1 c2 1 有錯 7 float f1 0 1f f2 123 float f3 f1 f2 0 1 有錯 答 1 float f1 0 1 錯誤原因 0 1 缺省為 double 類型 改正辦法 float f1 float 0 1 或改為 float f1 0 1f 2 long l1 12345678 l2 8888888888 錯誤原因 8888888888 已經超出缺省 int 型的最大表示范圍 必須加字母 L 改正辦法 long l1 12345678 l2 8888888888L 3 byte b1 1 b2 2 b3 129 錯誤原因 129 在自動轉換中超出范圍 改正辦法 byte b1 1 b2 2 b3 127 4 byte b b1 b2 錯誤原因 b1 b2 在作運算前首先轉換為 int 型 因此減法結果就是 int 型 不能直接賦值給 byte 型的 b 來保存 需要強制類型轉換 改正辦法 byte b byte b1 b2 5 int i 1 i i 0 1 錯誤原因 0 1 是 double 型 i 在乘法前會自動轉換為 double 型 乘法結果也是 double 型 不 能直接賦值為 int 型的 i 來保存 需要強制類型轉換 改正辦法 i int i 0 1 6 char c1 a c2 125 char c c1 c2 1 錯誤原因 c1 c2 在作運算前首先轉換為 int 型 因此計算結果就是 int 型 不能直接賦值給 char 型的 c 來保存 需要強制類型轉換 改正辦法 char c char c1 c2 1 7 float f1 0 1f f2 123 float f3 f1 f2 0 1 錯誤原因 由于 0 1 是 double 型 在運算前首先全部要轉換為 double 型 因此計算結果就是 double 型 不能直接賦值給 float 型的 f4 來保存 需要強制類型轉換 改正辦法 float f4 float f1 f2 0 1 44 閱讀下面的程序 寫出輸出結果 class Parent 靜態(tài)變量 public static String p StaticField 父類 靜態(tài)變量 變量 public String p Field 父類 變量 靜態(tài)初始化塊 static System out println p StaticField System out println 父類 靜態(tài)初始化塊 初始化塊 System out println p Field System out println 父類 初始化塊 構造器 public Parent System out println 父類 構造器 public class SubClass extends Parent 靜態(tài)變量 public static String s StaticField 子類 靜態(tài)變量 變量 public String s Field 子類 變量 靜態(tài)初始化塊 static System out println s StaticField System out println 子類 靜態(tài)初始化塊 初始化塊 System out println s Field System out println 子類 初始化塊 構造器 public SubClass System out println 子類 構造器 程序入口 public static void main String args new SubClass 答 1 父類 靜態(tài)變量 2 父類 靜態(tài)初始化塊 3 子類 靜態(tài)變量 4 子類 靜態(tài)初始化塊 5 父類 變量 6 父類 初始化塊 7 父類 構造器 8 子類 變量 9 子類 初始化塊 10 子類 構造器 45 請按下面的要求編寫程序 1 定義一個接口 Shapes 它至少包含一個可以計算面積的成員方法 2 編寫實現該 Shapes 接口的兩個類 正方形類和圓形類 3 編寫一個具有泛型特點的類 Map 要求該類可以在控制臺窗口輸出某種圖形的面積 而且這個類的類型變量所對應的實際類型就是 2 編寫的正方形類和圓形類 4 利用具有泛型特點的類 Map 在控制臺窗口分別輸出給定邊長的正方形的面積和給定 半徑的圓的面積 定義接口 interface Shapes abstract double getArea 定義 Square 類 class Square implements Shapes public double edge public Square double edge this edge edge public double getArea return edge edge 定義 Circle 類 class Circle implements Shapes public double radius public Circle double radius this radius radius public double getArea return radius radius Math PI class Map 使用泛型 T T 應當是 Shapes 的子類 T t public Map T t this t t public double getArea return t getArea 測試程序 class Test public static void main String args Map m1 new Map new Square 15 0 System out println 正方形的面積是 m1 getArea Map m2 new Map new Circle 15 0 System out println 圓形的面積是 m2 getArea 46 閱讀下面程序 寫出程序的輸出結果 class SuperClass int data SuperClass System out println SuperClass constructor data data add 1 System out println SuperClass constructor data data public void add int i data i public void print System out println data class SubClass extends SuperClass SubClass System out println SubClass constructor data data add 2 System out println SubClass constructor data data public void add int i data i 2 class Test public static void method SuperClass a a add 6 a print public static void main String args method new SubClass SuperClass constructor data 0 SuperClass constructor data 2 SubClass constructor data 2 SubClass constructor data 6 18 47 編寫一個簡單的乘法器 界面如下圖所示 在第一個文本框中輸入第一個乘數 在第 二個文本框中輸入第二個乘數 當單擊 按鈕時 在第三個文本框中輸出其乘積 import 語句 import javax swing import java awt import java awt event public class Multiply extends JFrame implements ActionListener 組件聲明及創(chuàng)建 private JButton operator new JButton private JTextField input1 new JTextField 5 private JTextField input2 new JTextField 5 private JButton equal new JButton private JTextField result new JTextField 5 添加組件 public Multiply Container c getContentPane c setLayout new FlowLayout c add input1 c add operator c add input2 c add equal c add result equal addActionListener this 處理按鈕動作事件 public void actionPerformed ActionEvent e double operand1 Double valueOf input1 getText doubleValue double operand2 Double valueOf input2 getText doubleValue result setText String valueOf operand1 operand2 設置框架屬性 public static void main String args Multiply f new Multiply f setDefaultCloseOperation JFrame EXIT ON CLOSE f setSize 320 80 f setVisible true 48 請設計一個軟件包 要求該軟件包至少擁有正方形類 圓類 要求每個類都具有構造 方法 計算該圖形的周長的成員方法和計算該圖形的面積的成員方法 然后編寫一個測試 程序 分別創(chuàng)建這些類的實例對象 并輸出這些實例對象的周長和面積 在創(chuàng)建這些實例 對象時 構造方法的調用參數值分別是 正方形 左上定點的坐標為 5 10 邊長為 15 圓形 圓心的坐標為 0 0 圓心為 15 interface Shapes abstract double getArea abstract double getPerimeter 定義接口 class Square implements Shapes 定義 Square 類 public int x y public int width height public double getArea return width height public double getPerimeter return 2 width 2 height public Square int x int y int width int height this x x this y y this width width this height height class Circle implements Shapes 定義 Circle 類 public int x y public double radius public double getArea return radius radius Math PI public double getPerimeter return 2 Math PI radius public Circle int x int y double r this x x this y y this radius r public class TestShape 測試程序 public static void main String args Shapes s1 new Square 5 10 15 15 Shapes s2 new Circle 0 0 6 0 System out println 正方形的面積是 s1 getArea System out println 正方形的周長是 s1 getPerimeter System out println 圓形的面積是 s2 getArea System out println 圓形的周長是 s2 getPerimeter 49 編寫一個程序 要求隨機生成 61 個學生的成績 從 0 到 100 的整數 在將成績排序 由高到低 后保存到文件 score txt 中 import java io DataOutputStream import java io FileOutputStream import java io IOException public class TestSort public static int MAXSIZE 61 public static void sortInt int arr 采用選擇法對一維數組進行排序 for int i 0 i arr length 1 i int k i for int j i 1 j arr length j if arr j i 在外循環(huán)中實施交換 arr i arr i arr k arr k arr i arr k arr i arr i arr k public static void main String args int score new int MAXSIZE try for int i 0 i MAXSIZE i score i int Math random 100 0 5 sortInt score DataOutputStream dout new DataOutputStream new FileOutputStream score txt for int i 0 i MAXSIZE i dout writeInt score i System out println score i dout close 結果保存到文件 catch IOException e System err println 發(fā)生異常 e e printStackTrace try catch 結構處理異常 50 閱讀下面程序 并回答問題 1 Java 程序分為哪兩種類型 這段程序是哪一類 Java 程序 2 這個圖形用戶界面上包含那幾類組件 點擊按鈕后程序顯示什么 3 ActionListener 是什么 程序中哪個方法是 ActionListener 中的方法 其功能是什么 import javax swing import java awt import java awt event public class Test4 extends JApplet implements ActionListener private Container cp getContentPane private JLabel prompt new JLabel 請點擊按鈕 private JButton start new JButton 開始 private JTextField output new JTextField 20 public void init cp setLayout new FlowLayout cp add start cp add prompt cp add output output setEditable false start addActionListener this public void actionPerformed ActionEvent e if JButton e getSource start output setText 好好學習 天天向上 問題 1 Java 程序分為 Java 應用程序 或 Java application 和 Java 小應用程序 或 Java applet 這段程序是 Java 小應用程序 問題 2 界面上包含一個標簽 JLabel 一個按鈕 JButton 和一個文本框 JTextField 點擊按鈕后 文本框內顯示 好好學習 天天向上 問題 3 ActionListener 是動作事件監(jiān)聽器接口 方法 actionPerformed 是 ActionListener 中的 方法 其功能是處理 applet 界面里發(fā)生的動作事件 51 閱讀下面程序 并回答問題 1 類 Test3 和類 SuperTest 之間是什么關系 2 關鍵字 super 和 this 分別是什么含義 3 這段程序的輸出是什么 class SuperTest public int age public SuperTest String s System out println Hi I am s age 35 public class Test3 extends SuperTest public int age public Test3 String s super s System out println Nice to meet you age 7 public void print System out println Age is age System out println My age is this age System out println My parent s age is super age public static void main String args Test3 test new Test3 Olive test print 問題 1 Test3 是 SuperTest 的子類 或 SuperTest 是 Test3 的父類 或繼承關系 問題 2 super 指對象的父類 或超類 this 指使用它的對象本身 或對對象自己的引用 問題 3 程序的輸出是 Hi I am Olive Nice to meet you Age is 7 My age is 7 My parent s age is 35 52 程序設計 在命令行中以樹狀結構展現給定的文件夾及其子文件 夾 中的文件 測試 文件夾為 C Windows 層次用縮進 4 個空格表示 答 import java io public class FileList public static void main String args File f new File C File separator Windows listFiles f 0 static void listFiles File f int level String preStr for int i 0 i level i preStr System out println preStr f getName 先序遍歷 File files f listFiles 取出所有兒子節(jié)點 for int i 0 i files length i if files i isFile System out println preStr files i getName if files i isDirectory listFiles files i level 1 53 寫出下面程序的執(zhí)行結果 public class Intern public static void main String args String s1 123456 字符串直接量 String s2 123456 字符串直接量 String s3 123 456 String a0 123 String s4 a0 456 這不是字符串直接量 String s5 new String 123456 這不是字符串直接量 String s6 s5 intern System out println s2 s2 s1 s1 System out println s3 s3 s1 s1 System out println s4 s4 s1 s1 System out println s5 s5 s1 s1 System out println s6 s6 s1 s1 答 輸出為 s2 s1 s3 s1 s4 s1 s5 s1 s6 s1 54 問 下面程序的執(zhí)行結果是什么 class Test public static void main String args int sum 0 outer for int i 1 i 10 i inner for int j 1 j 6 continue inner System out println sum sum 答 sum 27 55 下面程序的執(zhí)行結果是什么 class SuperClass void method System out println SuperClass method void fun System out println SuperClass fun this method class SubClass extends SuperClass void method System out println SubClass method Begin super fun System out println SubClass method End class Test public static void main String args SubClass a new SubClass a method 答 會陷入死循環(huán) 直到棧溢出報錯 SubClass method Begin SuperClass fun 56 下面的程序錯在哪里 如何修改 class SuperClass class SubClass extends SuperClass class Test public static void main String args SuperClass a new SuperClass SubClass b new SubClass b SubClass a 答 b SubClass a 這一句無法通過編譯 報錯信息為 Exception in thread main java lang ClassCastException SuperClass cannot be cast to SubClass 原因在于向下轉型 downcasting 是有前提的 改正 將 SuperClass a new SuperClass 改為 SuperClass a new SubClass 就可以了 57 下列語句序列給出了 k myArr 和 myMethod 的聲明 當調用方法 myMethod myArr k 之后 存儲在 myArr 和 k 里的值分別是什么 int k 7 String myArr love peace and void myMethod String a int m String temp a 1 a 1 a 2 a 2 temp m a 2 length 答 myArr 中的值是 love and peace k 的值是 7 58 閱讀下面程序 并回答問題 1 類 Child 和類 Parent 之間是什么關系 2 關鍵字 super 和 this 分別是什么含義 3 這段程序的輸出是什么 class Parent public void printMe System out println parent class Child extends Parent public void printMe System out println child public void printAll super printMe this printMe public class Test3 public static void main String args Child myC new Child myC printAll 問題 1 Child 是 Parent 的子類 或 Parent 是 Child 的父類 或繼承關系 問題 2 super 指對象的父類 或超類 this 指使用它的對象本身 或對對象自己的引用 問題 3 程序的輸出是 parent child 59 閱讀下面的程序 寫出程序運行的輸出結果 public class Test1 public int method int n int result 1 for int i 1 i n i result i return result public static void main String args Test1 test new Test1 int sum new int 6 for int i 1 i 5 i sum i test method i System out print sum i 答 程序運行的輸出結果是 1 2 6 24 120 60 寫一個 Java Application 讓用戶在文本框中輸入一個字符串 程序會將其中的大寫字 母變?yōu)樾懽帜?小寫字母為變大寫字母 其余字符不變 并按照逆序將它們顯示在一個 文本域中 例如 用戶輸入 abc123XYZ 點擊按鈕或按下回車 程序會輸出 zyx321CBA import 語句 import javax swing import java awt import java awt event public class StringConvert extends JFrame implements ActionListener 組件聲明及創(chuàng)建 private JTextField input new JTextField 15 private JButton convert new JButton 大小 逆序 private JTextField display new JTextField 15 添加組件 public StringConvert Container c getContentPane c setLayout new FlowLayout c add input c add convert c add display convert addActionListener this 處理按鈕動作事件 public void actionPerformed ActionEvent e display setText convert input getText n 實現逆序 public String convert String str StringBuffer resultStr new StringBuffer char ch for int i str length 1 i 0 i ch str charAt i if ch A 實現小寫字母變大寫字母 else resultStr append ch return resultStr toString 設置框架屬性 public static void main String args StringConvert f new StringConvert f setDefaultCloseOperation JFrame EXIT ON CLOSE f setSize 640 160 f setVisible true- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 0837 面向對象程序設計 作業(yè) 面向 對象 程序設計
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://m.szxfmmzy.com/p-9849392.html