中國石油大學 Java語言程式設計 答案
答案包含原始碼:聯絡qq : 938417270 (50一份)
一、簡答題
1 什麼是多型性? 方法的過載和覆蓋有何區別? 閱讀下列程式碼,指出其中存在的過載和覆蓋, 寫出輸出結果是什麼?解釋為什麼這樣輸出? (15分)
class C1
{
public void f() {
System.out.println("C1.f");
}
}
class C2 extends C1
{
public void f() {
System.out.println("C2.f");
}
}
class C3 {
public void g(C1 one) {
System.
one.f();
}
public void g(C2 two) {
System.out.println("g(C2)");
two.f();
}
}
public class Main1
{
public static void main(String[] args) {
C1 one = new C2();
C3 three = new C3();
three.g(one);
}
}
2、請用自己的語言介紹throw/throws有什麼聯絡和區別?在程式中應如何使用?另外談談final、finally的區別和作用,必須舉例說明用法。(15分)
3、編寫一個描述學生基本情況的類,屬性包括姓名,學號,語文成績,數學成績和英語成績,方法包括資訊輸出,設定姓名和學號,設定三門課程成績,計算總成績和平均成績。在main方法中對方法進行測試(15分)
4、Java中實現多執行緒有幾種方式?這幾種方式有什麼區別?然後採取其中一種方式設計一個執行緒例子,在例子中構造4個執行緒物件實現對同一資料類物件進行操作(資料初始值為0),其中執行緒物件1對資料執行+10的操作,執行緒物件2對資料執行+20的操作, 物件3對資料執行乘以3的操作,執行緒物件4對資料執行除以4的操作,,要求考慮執行緒同步,保證資料操作的正確性。要求提供程式程式碼以及執行結果截圖(15分)