如何区别java中的public,private,protected

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何区别java中的public,private,protected相关的知识,希望对你有一定的参考价值。

  1. 在java语言中我们描述一个类或者一个方法,经常会用到public,private,protected三个关键字,还有一种就是默认的访问权限,即什么都不写.

     

     

    首先我们介绍public关键字,从字面意义上出发,public意为公共的,可见它的访问权限是很宽松的,是大家所公有的.

    public的访问权限是最松的,它可以在同一个包内访问,也可以在不同包内访问,它表示紧随其后的元素对任何人都是可用的,

    技术分享
  2.  

    然后就是private,从字面上看,它的意思是私有,可见它的访问权限是比较严格的.

    它表示除类型创建者和类型的内部方法之外的任何人都不能访问的元素.它就像一堵墙,当有人试图访问它时,就会在编译时得到错误信息.

    技术分享
  3.  

    protected,字面意思是受保护的,它与private关键字的作用相当,差别仅在于继承的类可以访问protected成员,但是不能访问private成员.

    技术分享
  4.  

    最后java还有一种默认的访问权限,当没有使用到前面所述的任何访问指定权限时,它将发挥作用,这种权限通过被称为包访问权限,因为在这种权限下,类可以访问在同一个包中的其他类的成员,但是在包之外,这些成员如同指定了private一样.

    技术分享
    总结:一般我们在定义工具类的时候通常会使用public去修饰,因为显然工具类是要提供给所有人去使用的,所以必须定义为public.而在其他一些不想让别人随便就可以new出的类,我们通常使用private.各种访问情况总结见图片所示.
  1. 技术分享

以上是关于如何区别java中的public,private,protected的主要内容,如果未能解决你的问题,请参考以下文章

Java修饰符public,private,protected及默认的区别

Java中public,private,protected,和默认的区别

java作用域public,private,protected,以及不写时的区别

java作用域public,private,protected,以及不写时的区别

PHP中的private和public还有protected的区别

public private protected 三种访问修饰符在c#中的区别