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

Static简介

1、static称为静态修饰符,它可以修饰类中得成员。被static修饰的成员被称为静态成员,也成为类成员,而不用static修饰的成员称为实例成员。

 

 

2、当 Voluem volu1 = new Volume();  (在java中)

     Voluem volu2 = new Volume();

就是产生了两个新的对象volu1和volu2,这两个对象都各自拥有自己的成员存储空间,而不与其他对象共享。

    所创建的对象均由各自的存储空间来保存自己的值,而不与其他对象共享。这些成员变量(例如radius)各自相互独立,且存在于不同的内存之中。具有此特性的成员变量,java中称为实例变量(instance variable)

 

3、用static修饰的成员变量称为“静态变量”,静态变量也称为类变量。静态变量隶属于类的变量,而不属于任何一个类的具体对象。也就是说,对于类的任何一个具体对象而言,静态变量是个公共的存储单元,不保存在某个对象实例的内存空间中,而是保存在类的内存空间中得公共存储单元中。或者说,对于类的任何一个具体对象而言,静态变量是一个公共的存储单元,任何一个类的对象访问它的时候,去的都是一个相同的数值。同样,任何一个类的对象去修改它时,也都是对同一个内存单元进行操作。

 

4、它的引用方式:不需要实例化就可以直接用类去调用。也可以通过实例对象调用。

 

5、若类中含有静态变量,则静态变量必须独立于方法之外,就像其他高级语言在声明全局变量时必须在函数之外声明一样。

 

6、若对于静态方法,由于静态方法是属于整个类的,所以它不能操纵和处理属于某个对象的成员,而只能处理属于整个类的成员,即static方法只能访问static成员变量或者调用static成员方法,或者说在静态方法中不能访问实例变量或者实例方法。

 

7、在静态方法中也不能使用this或者super。因为this代表调用该方法的对象,但是现在静态方法既然不需要对象来调用,this也自然不应存在于静态方法内部。

 

8、对于静态方法,调用时与静态变量差不多,可以用类名直接调用,也可以用某一个具体的对象名来调用。

 

 

    总之,对于加上static修饰符的成员或者方法,他们直接就可以使用类名调用而且不用实例化类之后再调用,而且一个地方修改了static修饰的成员,那么这个成员在所有地方的调用结果也都将改变。

相关文章:

  • 解决WebService代理类速度慢的问题
  • centos6.5 mysql开机启动
  • Html 字体大小单位 px em pt
  • 如何调整 php 应用的上传附件大小?
  • Ubuntu14.10 更新源,现在很多源已经停用了建议使用ubuntu15以上
  • MVC3学习:实现简单的相册管理和图片管理
  • 彭旭老师《一线员工执行力提升训练》
  • 使用HTML5拍照
  • java基本数据类型
  • 中文锐推榜的优化
  • 如何下载vSphere Big Data Extensions 1.0免费试用版
  • Android深度探索读后感 第四章
  • Android官方教程翻译(4)——启动另一个Activity
  • 动态生成自定义控件ascx如何给ascx传值
  • Android UI(二)DridView的菜单
  • 【个人向】《HTTP图解》阅后小结
  • 2018一半小结一波
  • canvas 高仿 Apple Watch 表盘
  • Java到底能干嘛?
  • JS学习笔记——闭包
  • Linux编程学习笔记 | Linux多线程学习[2] - 线程的同步
  • Travix是如何部署应用程序到Kubernetes上的
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • windows-nginx-https-本地配置
  • 纯 javascript 半自动式下滑一定高度,导航栏固定
  • 检测对象或数组
  • 看域名解析域名安全对SEO的影响
  • 译自由幺半群
  • 我们雇佣了一只大猴子...
  • ​configparser --- 配置文件解析器​
  • ​queue --- 一个同步的队列类​
  • # .NET Framework中使用命名管道进行进程间通信
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • (Matalb时序预测)PSO-BP粒子群算法优化BP神经网络的多维时序回归预测
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (一)为什么要选择C++
  • (转)visual stdio 书签功能介绍
  • .a文件和.so文件
  • .bat批处理出现中文乱码的情况
  • .equals()到底是什么意思?
  • .Net下的签名与混淆
  • .net项目IIS、VS 附加进程调试
  • .Net小白的大学四年,内含面经
  • .NET中的Event与Delegates,从Publisher到Subscriber的衔接!
  • .project文件
  • @Bean有哪些属性
  • @RequestBody与@ModelAttribute
  • @Transactional类内部访问失效原因详解
  • @基于大模型的旅游路线推荐方案
  • [100天算法】-不同路径 III(day 73)
  • [3D基础]理解计算机3D图形学中的坐标系变换
  • [AIGC codze] Kafka 的 rebalance 机制
  • [BZOJ1040][P2607][ZJOI2008]骑士[树形DP+基环树]
  • [CC2642r1] ble5 stacks 蓝牙协议栈 介绍和理解