java中类的开始和销毁指的是?
看到了这样的一个帖子中静态变量和实例变量的生命周期有什么区别?首先很能理解你求知而无解的心情,因为我也是过来人静态变量是类相关的变量,所以他的生命周期是从这个累被声明,到...
看到了这样的一个帖子
中静态变量和实例变量的生命周期有什么区别?
首先很能理解你求知而无解的心情,因为我也是过来人
静态变量是类相关的变量,所以他的生命周期是从这个累被声明,到这个类彻底被垃圾回收机制彻底回收才会被销毁。
实例变量是这个类的对象里的变量,它和静态变量不同,它只能由创建出的对象来调用,所以实例变量是从这个对象(其实就是实例)被创建开始,直到这个对象没有任何引用变量去引用它,最终被垃圾回收站回收,这时这个实例变量也跟着就消失了。
总而言之:静态变量生命周期就是类的开始和销毁
实例变量生命周期就是对象的开始和销毁。‘
不知道这样说你能懂不,看着这些,自己好好理解理解,有时候不经意间就懂了呵呵
里面有提到类的开始和销毁
谁能帮我举个例子说明一下类什么时候开始,什么时候销毁? 展开
中静态变量和实例变量的生命周期有什么区别?
首先很能理解你求知而无解的心情,因为我也是过来人
静态变量是类相关的变量,所以他的生命周期是从这个累被声明,到这个类彻底被垃圾回收机制彻底回收才会被销毁。
实例变量是这个类的对象里的变量,它和静态变量不同,它只能由创建出的对象来调用,所以实例变量是从这个对象(其实就是实例)被创建开始,直到这个对象没有任何引用变量去引用它,最终被垃圾回收站回收,这时这个实例变量也跟着就消失了。
总而言之:静态变量生命周期就是类的开始和销毁
实例变量生命周期就是对象的开始和销毁。‘
不知道这样说你能懂不,看着这些,自己好好理解理解,有时候不经意间就懂了呵呵
里面有提到类的开始和销毁
谁能帮我举个例子说明一下类什么时候开始,什么时候销毁? 展开
展开全部
JVM解释执行过程大概有三步:类加载,字节码校验,解释字节命令调用底层硬件执行。
(1)当需要用到某一个类的时候,class loader去加载该类,这时候会为静态变量分配内存空间,执行静态代码块的内容,就是类的开始。
(2)当虚拟机终止如(System.exit(0);)的时候类就会被销毁
(1)当需要用到某一个类的时候,class loader去加载该类,这时候会为静态变量分配内存空间,执行静态代码块的内容,就是类的开始。
(2)当虚拟机终止如(System.exit(0);)的时候类就会被销毁
追问
public class C{
private List list = new ArrayList();(1)
private static List list = new ArrayList();(2)
public void m(){
List list = new ArrayList();(3)
}
哥哥,您再帮我说说这三个定义的区别?什么时候创建,什么时候销毁?
启动tomcat服务,用户A登录系统调用该类之后退出,用户B之后登录系统同样调用该类
那B访问前1、2、3、哪个还有值
追答
(1)是对象成员变量,当new一个对象实例的时候就为其分配空间,当(1)的list = null;也就是(1)没有被引用的时候,该对象有可能被销毁,具体看JVM的垃圾回收器什么时候去回收,当然也可以调用System.gc();强制JVM回收。
(2)是静态的成员变量,类加载的时候就为其分配空间,而且在全局只维护一份内存。
(3)是具有函数作用域的,当对象调用该方法的时候就执行创建该局部变量,方法结束后就销毁。
第二个问题(2)还有值,(1)就要看具体情况分析了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询