牛客網 Java專項練習(3)
1 下列關於Java類中方法的定義,正確的是()
a 若代碼執行到return語句,則將當前值返回,而且繼續執行return語句後面的語句。
b 只需要對使用基本數據類型定義的屬性使用getter和setter,體現類的封裝性。
c 方法的返回值只能是基本數據類型。
d 在同一個類中定義的方法,允許方法名稱相同而形參列表不同。
答案 d
A 一旦執行到return,就不再執行後續的代碼
C、Java的返回值類型有:void(沒有返回值)、基本數據類型(byte、short、int、long、float、double、char、boolean)、引用數據類型(類、接口、數組)
D、重載 方法名一致 形參列表不同(形參的個數或者參數對應的類型不一致)
2
public static void main(String[] args) {
Thread t = new Thread() {
public void run() {
my360DW();
}
};
t.run();
System.out.print("DW");
}
static void my360DW() {
System.out.print("360");
}
a DW
b 360
c 360DW
d 都不輸出
答案 c
輸出“360DW”,本題意在考察開啓線程的方法t.start()和直接調用t.run()的區別。但在題目中沒有提現 注:直接調用線程的run()方法不是開啓線程,就是普通調用,會直接執行run()方法中的內容
3 嘗試編譯以下程序會產生怎麼樣的結果?()
public class MyClass {
long var;
public void MyClass(long param) { var = param; }//(1)
public static void main(String[] args) {
MyClass a, b;
a =new MyClass();//(2)
b =new MyClass(5);//(3)
}
}
a 編譯錯誤將發生在(1),因爲構造函數不能指定返回值
b 編譯錯誤將發生在(2),因爲該類沒有默認構造函數
c 編譯錯誤將在(3)處發生,因爲該類沒有構造函數,該構造函數接受一個int類型的參數
d 該程序將正確編譯和執行
答案 c
構造方法就是:public
類名, 沒有方法修飾符
所以 (1
) 處就是一個普通方法
所以該類沒有帶參數構造方法 ,編譯報錯
a 構造函數沒有返回值
b 如果一個類沒有顯示的構造函數 java虛擬機就爲其加一個無參的構造函數
c 該類沒有帶參的構造函數
這篇感覺比較水 溜了溜了