選擇四項正確敘述(圖片未呈現,根據答案推斷考點)。
public > protected > default(package-private) > private
protected → 子類只能 protected 或 public;public → 子類只能 public;default → 子類同包可 default/protected/public,跨包只能 protected/public。正確選項:A, B, E, F(對應上述規則的正確表述)。
「權限只能放寬不能縮,private/static/final 不重寫;構造不繼承靠 super 連。」
class Base {
protected void foo() {}
public void bar() {}
}
class Sub extends Base {
// 下面哪個合法?
// 1. private void foo() {} // ❌ 權限縮小
// 2. public void foo() {} // ✅
// 3. protected void bar() {} // ❌ 權限縮小
// 4. void bar() {} // ❌ default < public
}