→ MOTG :虛線內為程式 06/19 15:43
※ 編輯: MOTG 來自: 59.114.196.179 (06/19 20:53)
資電學院
[開課系所]: 資訊
[課程名稱]: 物件導向設計
[老師名稱]: 張貴忠 老師
[開課學期]: 97-1
[類型]: 97-1期末考
Totally 100 points
1. (Basic Concepts - 20 pts) Just a brief explanation
(a) Event-driven programming
(b) Polymorphism
(c) Base class / Derived class
(d) Abstract class
2. (Polymorphism - 10 pts) Please describe what is late binding, and what is
early binding? Which one of above techniques is used for java to achieve
Polymorphism?
3. (Inheritance - 10 pts) What are the differences between overloading and
overriding?
4. (Inner Class - 10 pts) What is inner class? What are the advantages of
using inner class?
5. (Polymorphism - 15 pts) What are the outputs of the following codes?
------------------------------------------------------------------------------
public class A (
String msg;
public A() {
this("I'm class A");
}
public A(String msg) {
this.msg = msg;
}
public void sayHello() {
System.out.println("A:" + msg);
}
}
public class B extends A{
public B() {
super("I'm class B");
}
public void sayHello() {
System.out.println("B:" + msg);
}
}
------------------------------------------------------------------------------
------------------------------------------------------------------------------
public class C {
public static void main(String[] args) {
A obj1 = new A();
B obj2 = new B();
C mainObj = new C();
mainObj.showMessage(obj1);
mainObj.showMessage(obj2);
}
public void showMessage(A member) {
member.sayHello();
}
}
------------------------------------------------------------------------------
6. (The final Modeifier - 15 pts) What are the meaning of final class, final
variable, final method respectively?
7. (Access Modifiers - 20 pts) Given the following codes, and some
compile-time errors exist in this program. Please precisely indicate the
the line numbers of error statements in the program. (Remember to briefly
explain why the indicated statement is error.)
------------------------------------------------------------------------------
1 package mypackage;
2 public class A {
3 public int v1;
4 protected int v2;
5 int v3;
6 private int v4;
7 }
------------------------------------------------------------------------------
------------------------------------------------------------------------------
8 package mypackage;
9 public class B {
10 public B() {
11 A obj1 = new A();
12 obj1.v1 = 10;
13 obj1.v2 = 10;
14 obj1.v3 = 10;
15 obj1.v4 = 10;
16 }
17 }
------------------------------------------------------------------------------
------------------------------------------------------------------------------
18 package mypackage;
19 public class C extends A {
20 public C() {
21 v1 = 10;
22 v2 = 10;
23 v3 = 10;
24 v4 = 10;
25 }
26 }
------------------------------------------------------------------------------
------------------------------------------------------------------------------
27 import mypackage.A;
28 public class D extends A {
29 public D() {
30 v1 = 10;
31 v2 = 10;
32 v3 = 10;
33 v4 = 10;
34 }
35 }
------------------------------------------------------------------------------
------------------------------------------------------------------------------
36 public class E {
37 public E() {
38 A obj1 = new A();
39 obj1.v1 = 10;
40 obj1.v2 = 10;
41 obj1.v3 = 10;
42 obj1.v4 = 10;
43 }
44 }
------------------------------------------------------------------------------
--
我從來沒討厭過記者,只是不喜歡一部份自稱記者的寄生蟲而已。我討厭的是對可能受到政
治壓力的事避而不提,卻專寫那些會傷害一般市民的隱私及名譽的記者;更過份一點,成為
當權者的利益代辯人的傢伙而已。
楊威利 銀河英雄傳說
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.134.237.201
※ 編輯: MOTG 來自: 140.134.237.201 (06/19 15:39)
※ 編輯: MOTG 來自: 140.134.237.201 (06/19 15:41)
※ 編輯: MOTG 來自: 140.134.237.201 (06/19 15:41)
[開課學院]: