程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> java中易遺忘的知識,不定時更新……,定時更新…

java中易遺忘的知識,不定時更新……,定時更新…

編輯:JAVA綜合教程

java中易遺忘的知識,不定時更新……,定時更新…


如果有人問你: "子類繼承父類所有非私有(private)的屬性和方法這句話對嗎?", 如果你回答對的, 那我只能說too young too simple!

修飾符的問題

  為什麼說這句話不對了, 只要你搞清楚了4個訪問修飾符的應用范圍你就知道了

  public: 任何地方都能訪問

  private: 類訪問符(自己取得名字), 只要在本類中的都可以訪問, 其他類中不可以訪問

  默認: 即不加修飾符的時候, 這時候是包訪問符, 只要在本包中的都可以訪問, 其他包不可以訪問(其他包中的子類也不可以訪問, 這也正是和protected的區別)

  protected: 默認+非同包的子類, 即可以在本包和非同包的子類中訪問, 在非同包的非子類中不可以訪問

  可以自己寫個案例驗證一下, 也有助於自己更好的理解, 那我再問: "實現類'繼承'父接口的所有非私有的屬性和方法對嗎?", 如果你受到上面的啟發脫口而出'不對', 那你就要仔細思考一下了. 首先這個問題就有問題, 因為接口中的屬性默認被public static final修飾, 接口中的方法默認被public abstract修飾, 所以接口中沒有私有的屬性和方法, 所以說"實現類'繼承'父接口中所有的屬性和方法"是對的. 

  怎麼驗證呢?

    static: 驗證在實現類中是否能被類名直接調用

    final: 驗證在實現類中是否能修改屬性的值

    abstract: 試著在接口中寫一個具體的方法

    public: 這個就不用說了吧

  

後面還會更新其他的……

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved