Java作用域、访问修饰符详解

 更新时间:2025年02月22日 15:09:20   作者:辉夜姬想环游世界  
文章详细解释了Java中的作用域和访问修饰符,包括变量和方法的作用域,以及四种访问修饰符(public、protected、默认、private)的使用规则和可见性范围

Java作用域、访问修饰符详解

Java中,作用域(Scope)指变量、方法或类的可访问性和生命周期,即他们在代码中的可见范围。作用域由声明的位置修饰符共同决定

一、变量的作用域

变量有以下五种作用域类型

作用域类型声明位置生命周期访问范围
实例变量类内,方法外对象创建到销毁类内所有非静态方法
静态变量类内,方法外+static类加载到程序结束类内所有方法,其他类通过类名
局部变量方法/构造方法/块内方法/块执行期间声明处到方法/块结束
块变量代码块内块执行期间块内部
方法参数方法参数列表方法调用期间整个方法体

二、方法的作用域

方法类型可访问成员调用方式修饰符限制
实例方法实例变量、静态变量、其他实例/静态变量对象名.方法名()无特殊限制
静态方法静态变量、其他静态变量类名.方法名() 或 对象名.方法名()不能直接访问实例成员

访问修饰符(Access Modifiers):

用于控制类、变量、方法和构造方法的可见性和访问范围,是面向对象编程中**封装性(Encapsulation)**的核心机制。

Java 提供了四种访问修饰符:

按访问范围从宽到窄依次为:public > protected > 默认(无修饰符) > private

修饰符可见性范围典型用途
public全局可见对外接口、工具类、常量
protected同一包、字类允许子类扩展的受保护方法或变量
default同一包包内共享的实现细节
private仅当前类隐藏内部状态,强制通过方法访问

注意事项

1、子类重写父类方法时,访问权限不能比父类范围更小

2、构造方法使用private修饰时,就是单例模式的要求之一,即不允许外部实例化

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • struts2 validation.xml 验证规则代码解析

    struts2 validation.xml 验证规则代码解析

    这篇文章主要介绍了struts2 validation.xml 验证规则代码解析,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Java基础之练习打印三角形

    Java基础之练习打印三角形

    这篇文章主要介绍了Java基础之练习打印三角形,文中有非常详细的代码示例,对正在学习java基础的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • springboot如何使用@Value获取配置文件的值

    springboot如何使用@Value获取配置文件的值

    这篇文章主要介绍了springboot如何使用@Value获取配置文件的值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • Jpa使用Page和Pageable分页遇到的问题及解决

    Jpa使用Page和Pageable分页遇到的问题及解决

    这篇文章主要介绍了Jpa使用Page和Pageable分页遇到的问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • Java中的接口和抽象类用法实例详解

    Java中的接口和抽象类用法实例详解

    这篇文章主要介绍了Java中的接口和抽象类用法,结合实例形式较为详细的分析了Java中关于接口和抽象类的概念、定义、用法与相关注意事项,需要的朋友可以参考下
    2015-12-12
  • SpringBoot微服务注册分布式Consul的详细过程

    SpringBoot微服务注册分布式Consul的详细过程

    这篇文章主要介绍了SpringBoot(微服务)注册分布式Consul,Spring Boot应用可以通过向Consul注册自身来实现服务发现和治理,使得其他服务可以在Consul中发现并调用它,需要的朋友可以参考下
    2023-04-04
  • 浅谈java 中文件的读取File、以及相对路径的问题

    浅谈java 中文件的读取File、以及相对路径的问题

    今天小编就为大家分享一篇浅谈java 中文件的读取File、以及相对路径的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • JVM调优OutOfMemoryError异常分析

    JVM调优OutOfMemoryError异常分析

    这篇文章主要为大家介绍了JVM调优OutOfMemoryError异常分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • Java Condition类案例详解

    Java Condition类案例详解

    这篇文章主要介绍了Java Condition类案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • springBoot快速访问工程目录下的静态资源

    springBoot快速访问工程目录下的静态资源

    springboot工程,是没有webapp文件夹的,静态文件放在src/main/resources/static文件夹下即可,模板文件放在src/main/resources/templates下,本文给大家介绍springBoot快速访问工程目录下的静态资源的相关知识,一起看看吧
    2021-06-06

最新评论