java面向物件基礎 練習 +答案
三、選擇題
1.下面關於封裝性的描述中,錯誤的是( )。
A.封裝體包含屬性和行為 B.被封裝的某些資訊在外不可見
C.封裝提高了可重用性 D.封裝體中的屬性和行為的訪問許可權相同 可以不相同 程式設計師定義
2.下面關於類方法的描述,錯誤的是()。
A.說明類方法使用關鍵字static B.類方法和例項方法一樣均佔用物件的記憶體空間 類方法在不例項化的時候 是不佔用記憶體空間的
C.類方法能用例項和類名呼叫 D.類方法只能處理類變數或呼叫類方法
3.下面關於包的描述中,錯誤的是()。
A.包是若干物件的集合 B.使用package語句建立包
C.使用import語句引入包 D.包分為有名包和無名包兩種
4.下面哪些程式碼段是正確的Java源程式?(BCD )
A.import java.io.*; B.import java.io.*;
package testpackage; class Person{/* do something... */}
public class Test{/* do something... */} public class Test{/* do something... */}
C.import java.io.*; D.package testpackage;
import java.awt.*; public class Test{/* do something... */} public class Test{/* do something... */}
四、判斷題 1.類是一種型別,也是物件的模板。( T )
2.類中說明的方法可以定義在類體外。(F)
3.建立物件時系統將呼叫適當的構造方法給物件初始化。(T)
4.使用運算子new建立物件時,賦給物件的值實際上是一個引用值。(T)
5.物件賦值實際上是同一個物件具有兩個不同的名字,它們都有同一個引用值。(T)
6.class是定義類的惟一關鍵字。(T)
五、改錯題
1.下面的程式中有若干個語法錯誤,找出後請改正。
public class MyMainClass{
public static void main(String [] args) { TheOtherClass obj = new TheOtherClass("John Smith","Male","UK");
System.out.println(obj.name+' '+obj.gender+' '+obj.nationality);
}
System.out.println("The end of the program! ")
}
public class TheOtherClass{
private String name,gender,nationality;
public TheOtherClass(String name,String gender,String nationality) {