java类成员中的访问级别浅析

 更新时间:2021年01月31日 09:56:44   作者:小妮浅浅  
在本篇文章里小编给大家整理的是一篇关于java类成员中的访问级别浅析内容,有兴趣的朋友们跟着学习下。

我们知道想要访问一个网站,根据身份的不同,会有一些使用上的限制,这就是权限级别的体现。在java的类成员中,有一些访问的级别是需要我们了解的,主要分为四种:public、private、protected、package。下面我们就这四种访问修饰符分别进行详细的介绍。

一、四种访问修饰符

1.public修饰符用于暴露域和方法,以便在类定义的包外部能访问它们。对包和类中必要的接口元素,也需要使用这个级别;main()方法必须是public的,toString()方法也必须是public的。一般不会用public暴露一个域,除非这个域已经被声明为final。(包内访问)

2.private标识的访问模式,表示私有的域和方法只能被同一个类中的其他方法访问,实现了数据隐藏;必要时,可以通过方法访问私有变量。(类内访问)

3.protected修饰符提供一个从包外部访问包(有限制)的方法。在域和方法前增加protected修饰符不会影响同一个包内其他类和方法对它们的访问。要从包外部访问包(其中含有protected成员的类),必须保证被访问的类是带有protected成员类的子类。也就是说,希望包中的一个类被包之外的类继承重用时,就可以使用这个级别。一般应该慎用。(跨包访问)

4.package是默认的保护模式,又叫做包访问,没有任何修饰符时就采用这种保护模式。包访问允许域和方法被同一个包内任何类的任何方法访问。(包中类被包外类继承重用)

二、修饰符说明

1.前三种类型的访问级别使用以下三个关键字之一来指定:public,private或protected。第四种类型称为默认访问级别(或包级别),并且通过不使用访问修饰符来指定。

如果类成员使用public关键字声明为公开,如果类本身可访问的话,则可以从Java代码中的任何位置访问它。

2.如果使用private关键字将类成员声明为私有,则只能在声明类的主体中访问,而在其他任何地方都不能访问。

3.如果使用protected关键字将类成员声明为保护,则可以从同一包中的类或该类的子类来访问此类成员,即使子类位于不同的包中也是可以访问的。

4.如果不为类成员使用任何访问级别修辞符,则它具有包级别访问权限。 具有包级别访问权限的类成员可以从同一个包中访问。

5.类成员的访问级别可以从最严格到最不严格,即:private,package-level,protected和public。

知识点扩展:

类可以是public或default(或包级别)。在本教程中主要介绍 public,private,protected 这几个访问级别修辞符的使用。
类成员的访问级别确定程序的哪个区域可以访问它。 以下四个访问级别修饰符之一可以用于类成员:

  • 公开(public)
  • 私有(private)
  • 保护(protected)

默认或包级别访问
前三种类型的访问级别使用以下三个关键字之一来指定:public,private或protected。第四种类型称为默认访问级别(或包级别),并且通过不使用访问修饰符来指定。

如果类成员使用public关键字声明为公开,如果类本身可访问的话,则可以从Java代码中的任何位置访问它。

如果使用private关键字将类成员声明为私有,则只能在声明类的主体中访问,而在其他任何地方都不能访问。

如果使用protected关键字将类成员声明为保护,则可以从同一包中的类或该类的子类来访问此类成员,即使子类位于不同的包中也是可以访问的。

如果不为类成员使用任何访问级别修辞符,则它具有包级别访问权限。 具有包级别访问权限的类成员可以从同一个包中访问。

到此这篇关于java类成员中的访问级别浅析的文章就介绍到这了,更多相关java类成员中的访问级别有哪些内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java基础之方法和方法的重载详解

    java基础之方法和方法的重载详解

    这篇文章主要介绍了java基础之方法和方法的重载详解,文中有非常详细的代码示例,对正在学习java基础的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-05-05
  • spring  mybatis多数据源实例详解

    spring mybatis多数据源实例详解

    本文主要介绍sping mybatis多数据源处理,在开发过程中经常会遇到多个数据库,这里给大家举例说明如何处理,希望能帮助有需要的小伙伴
    2016-07-07
  • Java使用过滤器防止SQL注入XSS脚本注入的实现

    Java使用过滤器防止SQL注入XSS脚本注入的实现

    这篇文章主要介绍了Java使用过滤器防止SQL注入XSS脚本注入,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Spring中基于Java的配置@Configuration和@Bean用法详解

    Spring中基于Java的配置@Configuration和@Bean用法详解

    这篇文章主要介绍了Spring中基于Java的配置@Configuration和@Bean用法详解,Spring中为了减少xml中配置,可以声明一个配置类(例如SpringConfig)来对bean进行配置。,需要的朋友可以参考下
    2019-06-06
  • Java实现弹窗效果的基本操作

    Java实现弹窗效果的基本操作

    这篇文章主要为大家详细介绍了Java实现弹窗效果的基本操作,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • springboot mybatis-plus实现登录接口

    springboot mybatis-plus实现登录接口

    本文主要介绍了springboot mybatis-plus实现登录接口,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-11-11
  • spring bean标签的primary属性用法讲解

    spring bean标签的primary属性用法讲解

    这篇文章主要介绍了spring bean标签的primary属性用法讲解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • java实现图片分割指定大小

    java实现图片分割指定大小

    这篇文章主要为大家详细介绍了java实现图片分割指定大小,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • 解决方法A调用方法B的事务控制问题

    解决方法A调用方法B的事务控制问题

    这篇文章主要介绍了解决方法A调用方法B的事务控制问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • 分析HashMap 的 JDK 源码

    分析HashMap 的 JDK 源码

    这篇文章主要分析了HashMap 的 JDK 源码,帮助大家更好的理解和学习Java,感兴趣的朋友可以了解下
    2020-10-10

最新评论