14. static(静态) 关键字
2024-08-30 01:43:52
1.修饰成员变量
1)定义:数据需要被共享给所有对象使用使用static修饰(全局变量)
2)注意:
1.用static中创建的成员变量在内存中只有一份
2.千万不要为了方便访问数据而使用static修饰成员变量,只有成员变量的数据是真正需要被共享的时候才使用static修饰
3.当加载类时即已加载,非static变量实例对象时加载,而普通成员变量只有在对象被创建的时候猜存在
4.静态成员变量从类被加载开始到类被卸载,一直存在;普通成员变量只要在类被实例化也就是创建对象是才开始存在,一直到对象结束,生命也告终
3)访问方式:
1.可以使用对象进行访问。
对象.变量名。
2.可以使用类名进行访问。
类名.变量名;
4) 语法:public static String name;
案例1:
需求:描述一下学生类。都是中国人....
目前存在的问题: 所有的学生都是中国 的,有n个学生就会有n份中国的 数据存内存中,这样子会浪费内存。
目前方案: 把“中国”这个数据移动 到数据共享区中,共享这个数据给所有的Student对象使用即可。
静态的成员变量只会在数据共享区中维护一份,而非静态成员变量的数据会在每个对象中都维护一份的。。
2.static修饰成员函数
注意:
凡是用static修饰的成员函数调用时不需要实例化类
static不能修饰类
最新文章
- MapReduce剖析笔记之四:TaskTracker通过心跳机制获取任务的流程
- SQL DELETE 语句
- Spring Bean
- webform LinQ
- BI先特技软件 Analyzer安装时的部分问题
- 淘宝(阿里百川)手机客户端开发日记第十篇 阿里百川服务器环境介绍之API文档的快速链接(四)
- 二维码相关工具Qrcode笔记
- ";struct";类型重定义解决办法
- (转)阴影锥(Shadow Volume)
- C++ 记事本: 变量
- ACM题目————Robot Motion
- 资源 之 4.2 内置Resource实现(拾)
- C#的浅拷贝和深拷贝
- 在Visual Studio 的 “一般处理程序 ” .ashx 文件中如何创建Session 对象
- ie6 iframe src=";javascript:"; 报安全警报问题
- LINQ TO SQL 怎样 执行存储过程并返回存储过程的临时表
- 模拟制作网易云音乐(AudioContext)
- VS与Windbg调试
- Android+openCV人脸检测2(静态图片)
- Mouse w/o Borders实现两台主机共用一套键鼠方法及问题处理
热门文章
- ionic ios上状态栏和app重叠解决方案
- 【转载】RabbitMQ正确的安装方式(windows10)
- vCenter 6.0 如何用client登录
- sping+quartz定时任务的最简单实践
- 57. Collections(list的工具类)、Arrays(数组的工具类)
- PowerPoint for Mac 中的键盘快捷方式汇总
- 基于.Net4.0实现 ToastNotification
- Thread.Join理解
- hive中分隔符‘\001’到底是什么鬼
- phpstorm使用说明