「Java」「super & modifier」 Chapter3 Question6
Given:
Answer:
super(b)的呼叫
父子類別的修飾子權限
public class Test4 {
public static void main(String[] args) {
}
}
abstract class Shape{ //抽象類別
Shape(){}//建構子
protected void area() { //無回傳直的物件方法
System.out.println("Shape");
}
}
class Square extends Shape{
int a;
Square(int a){
this.a=a;
}
public void area() {
System.out.println("Square");
}
}
class Rectangle extends Square{
int b, c;
Rectangle(int b, int c){
/*insert code*/
//缺少 super(b) 或 super(c)。super呼叫父類別的Square(int a)
//因 b 與 c 是 int型別
this.b=b;
this.c=c;
}
void area() {
//由於Square的area物件方法修飾子是public,所以這子類別的area物件方法,也必須使用相同或更低權限。
//答案: public void area() {
System.out.println("Rectangle");
}
}
Answer:
super(b)的呼叫
父子類別的修飾子權限
留言
張貼留言