当前位置: 首页 > article >正文

Java中private和static同时使用会出现什么情况?

引言

这几天在学习单例设计模式(后面会出一期包含23种设计模式介绍的博客)的时候发现了一段代码

private static Single single;

当时我就在想,这个private和static一起用的话外界想要访问这个成员变量到底是能不能访问到呢?当时在学习Java基础的时候也没有仔细研究过这里,下面就详细的来解释一下,把这块空缺的知识点补上!

private的作用

private作为权限修饰符,用来声明当前被修饰的变量、方法为私有的,只能在类的内部直接访问或调用,是限制访问的范围的

那么提到这里就把那4种权限修饰符的访问范围在复习一下

 

static的作用

被static修饰的变量或方法属于类,而不是某个具体的对象,即使他是一个类变量或类方法。他们在JVM初始化的时候被加载进来,让对象在运行的时候不需要实例化就可以直接使用。

private static在外部到底能不能被访问到?

答:不能

虽然有static将这个变量变为静态变量,无需创建对象就可以通过类名访问,但前面private才是真正控制访问的范围的,private为私有,只有在类的内部才能够访问到。


http://www.kler.cn/a/501971.html

相关文章:

  • WINFORM - DevExpress -> DevExpress总结[安装、案例]
  • git 提交命令记录
  • C++ ——— 内部类
  • 面向对象分析与设计Python版 分析与设计概述
  • vue3后台系统动态路由实现
  • LeetCode 热题 100 | 滑动窗口
  • B+树的原理及实现
  • 2025广州国际汽车内外饰技术展览会:引领汽车内外饰发展新潮流-Automotive Interiors
  • 什么叫区块链?怎么保证区块链的安全性?
  • 用队列实现栈和用栈实现队列(下)
  • 【机器学习】无监督学习携凝聚型层次聚类登场。无需预设标签,仅凭数据内在特质,逐步归拢聚合,挖掘隐藏群组,为复杂数据剖析开启智能、高效的新思路。
  • 性能测试工具Jmeter事务处理
  • 【集成学习】Boosting算法详解
  • Flink基础概念
  • 解码 Web3:区块链如何编织去中心化之网
  • 深入解析 C++ 类型转换
  • Go语言的计算机基础
  • 创建 WordPress 插件(第一部分):添加管理页面
  • NBC模型【机器学习】
  • 【日常小记】Ubuntu启动后无图形界面且网络配置消失
  • SpringBoot源码解析(七):应用上下文结构体系
  • 电商项目-基于ElasticSearch实现商品搜索功能(三)
  • Redis常见
  • apache age:22023,42883,等报错信息
  • spring mvc源码学习笔记之十一
  • EF Core一对一和多对多