文档章节

今天又被静态变量坑了,特写此文,几年前被批的经历都忘啦

javacc
 javacc
发布于 2015/12/05 17:44
字数 395
阅读 308
收藏 10

 类的成员变量有两种:一种是被static关键字修饰的变量,叫类变量或静态变量,一种是没有被static修饰的,叫做实例变量 
    静态变量和实例变量的区别在于: 
    类静态变量在内存中只有一个,java虚拟机在加载类的过程中为静态变量分配内存,静态变量位于方法区,被类的所有实例共享,静态变量可以通过类名直接访问。静态变量的生命周期取决于类的生命周期,当类被加载的时候,静态变量被创建并分配内存空间,当类被卸载时,静态变量被摧毁,并释放所占有的内存。 
    类的每一个实例都有相应的实例变量,每创建一个类的实例,java虚拟机为实例变量分配一次内存,实例变量位于堆区中,实例变量的生命周期取决于实例的生命周期,当创建实例时,为实例变量背创建,并分配内存,当实例被销毁时,实例 变量被销毁,并释放所占有的内存空间。 
    假如成员变量时引用变量,该成员变量结束生命周期时,并不意味着它所引用对象也结束生命周期。变量的生命周期和对象的生命周期是不同的概念。

本文转载自:http://leiguomin627-126-com.iteye.com/blog/422214

共有 人打赏支持
javacc

javacc

粉丝 23
博文 62
码字总数 20704
作品 0
深圳
项目经理
加载中

评论(2)

javacc
javacc

引用来自“漏风小子”的评论

咋了
网上找到一个开源的打印条码的工具类,结果打印条码会出现重叠的现象。莫名其妙啊,后来搞了半天,一看源码才知道,里面条形码字符串使用的是静态变量。。。。
漏风小子
漏风小子
咋了
支持X86平台的Android输入法

网上绝大部分输入法都只能运行在ARM架构下的平台上,支持X86平台的很少,今天在网上搜索并测试,终于找到一个,叫:INSUN智能拼音输入法, 地址: http://dl.pconline.com.cn/download/79521.html 特...

长平狐
2013/03/19
209
0
小程序 音频API采坑完全手册

最近公司上线一个类似小打卡的一个小程序,基于WEPY开发。 其他都功能点都还好,录音跟音频播放的功能点踩各种莫名其妙的坑,社区也有不少人在提问,特写此文祭天 产品大概的UI如下图 录音功能...

MarsDes
05/11
0
0
eclipse 搭建ssh 环境:java.lang.ClassNotFoundExcepti...

特写此文,记录纠结我多时的异常! 在eclipse中开发j2ee,搭建ssh环境时,配置spring一直报: java.lang.ClassNotFoundException: org.springframework.web.context. 哎,我那个无语啊,抓狂。...

18号
2013/05/27
0
3
SpringBoot之打包成war包部署到tomcat

SpringBoot打包成war包部署到tomcat 小编花费了九牛二虎之力,总算把SpringBoot项目成功打包成war包,其中不免遇到了一些小状况,特写此文,以便其他小伙伴们不要走我的老路,避免重复这些小...

被钓的小鱼
07/10
0
0
node.js+express+mysql+swig+bootstrop 搭建个人博客系统

花了2周的时间,用node.js+express+mysql+swig+bootstrop搭建了一个博客系统,从在数据库中创建相应的表存储数据,到后端用node根据条件查询数据库返回json结果,再到前端用ajax请求node的返...

范小饭_
01/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Ubuntu 安装ssh服务以及开启root用户ssh登录

一、安装ssh服务 安装ssh服务 sudo apt-get update sudo apt-get install openssh-server 安装完成后启动ssh服务 sudo service ssh start 二、开启root用户ssh登录 解决root远程ssh不能登录,...

15834278076
16分钟前
1
0
AndroidRX

1.延时并切换回主线程执行 Observable.just(true).delay(2, TimeUnit.SECONDS) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Consumer<Boolean>() { [@Override](https://my.......

我是菜鸟我骄傲
44分钟前
1
0
申请Let's Encrypt永久免费SSL证书

环境安装 1、安装git yum install git-core 2、安装python 系统自带 不用安装 只要版本大于2.7即可。 获取Let's Encrypt免费SSL证书 先停止nginx 在阿里云安全组里加入 443端口的入规则 git ...

HGMrWang
52分钟前
2
0
如何使用playframework进行更好的开发

1: 自定义基类Controller 相信刚开始使用Play的人写的Controller 都继承于 play.mvc.Controller , 但这并不是一个很好的选择,自建基类Controller可以扩展更多的功能。 1.1 验证功能。 后台...

tuerqidi
57分钟前
9
0
《JavaScript高级程序设计(第3版)》阅读笔记

第6章 面向对象的程序设计 6.2 创建对象 6.2.1 工厂模式 JavaScript创建对象(一)—— 工厂模式 6.2.2 构造函数模式 JavaScript创建对象(二)——构造函数模式 6.2.3 原型模式 JavaScript...

Bob2100
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部