基础系列三------java访问修饰符

以下基础总结是个人模糊点,大神可跳过,新手可参考,如有错误请指出,谢谢


传送门基础二:https://blog.csdn.net/qq_39657909/article/details/80824334

一、为什么会有访问修饰符

        我们写的每个类、接口、变量、方法,出于安全等等方面的考虑,我们希望有些是可以所有人都能访问,有些是部分人能访问,有些是只能谁都不能访问只是自己用,而实现这些功能就需要用到访问修饰符。

二、自我理解

        ①就好像我们自己有些东西当你对外声明了所有人都能用,这样别人才能取用,而在java中(类、接口、变量、方法)你希望所有人都能用那么就必须先声明为public。

        ②而我们有些比较有价值的东西,你不希望把所有人都能用,只想希望你身边最好的朋友和你的后代能用,那么你也必须去对外说明这些东西只有他们才能用,而在java中(变量、方法 )你只希望跟你同包或者你的子类访问就需要声明为protected。

        ③我们有些非常特殊的东西,我们希望除了自己谁也不能用,而在java中(变量、方法)只能在同一类中访问就需先声明为private。

        ④在java中不写访问修饰符则默认为default (类、接口、变量、方法)指在同一包中才能访问

注:括号中红色为能加访问修饰符的有哪些,private与protected不能修饰类(外部类)

三、图解

修饰符当前类同一包子孙类其他包其他包子孙类
publicYYYYY
protectedYYYNN/Y
privateYNNNN
defaultYYNNN

传送门基础四https://blog.csdn.net/qq_39657909/article/details/80448956



版权声明:本博客为记录本人自学感悟,内容大多从网上学习与整理所得,若侵权请告知!

https://mp.csdn.net/postedit/80365677

已标记关键词 清除标记
<p>java的访问修饰符有四种,分别是:public 、protected、friendly ,private ;<br>这四种修饰符访问级别如下: <br>               当前类        子类            同一个包中类     其它包中类<br>public        √             √                  √                 √ <br>protected   √             √                  √                × <br>friendly       √            <span style="background-color: #ff0000;"> ×</span>                  √                × <br>private        √           ×                   ×                 × </p> <p>默认不写是:friendly </p> <p>上面都是网上的答案;</p> <p>但是我本人实践过 ,如果父类中的某个变量 ,前面没有写访问修饰符。也就是friendly ,那么 子类照样可以调用。可以用this.变量名;super.变量名;子类对象.变量名; 所以我总结出:</p> <p>                当前类          子类               同一个包中类   其它包中类<br>public         √              √                      √              √ <br>protected   √              √                      √             × <br>friendly      √              <span style="background-color: #ff0000;">√       </span>                √             × <br>private       √             ×                        ×             × </p> <p><br>欢迎大家积极讨论此问题;</p>
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页