2013-12-23 42 views
-7
  1. 類Person
    {
    私人字符串名稱;
    公共
    字符串的ToString()
    {
    返回this.name;
    }
    }我們可以@Override派生類中的超類的公共方法嗎?

    class Student extends Person 
    { 
        private int no_of_courses; 
        public 
         @Override String toString() { return "Student " + super.toString(); } 
    } 
    class SuperDemo 
    { 
        public static void main(String[] args) 
        { 
         Person p = new Student("ABC,"XYZ"); 
         System.out.println(p.toString()); 
        } 
    } 
    
    Can we @Override a public method of super class in the derived class? 
    Person class has Constructor Person(String name); 
    Student class has constructor Student(String name) { super(name); } 
    
+0

爲什麼不在發佈問題之前嘗試一下? –

+0

如果你要編輯一個問題,請付出不少努力,但這看起來仍然很糟糕。 –

+0

我試過了,我會添加錯誤代碼試圖訪問較弱的訪問privilages;被公開爲 – user3128633

回答

2

是。當你從Object覆蓋toString()時,你已經這樣做了。

不能覆蓋:

  • 任何標記final
  • 任何static
  • 任何private

你也不能減少的覆蓋方法的知名度;也就是說,您無法將public方法重寫爲protected之一。

+0

thanx mate ...很好的幫助 – user3128633

相關問題