java变量存储
Posted 学无涯,苦做舟
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java变量存储相关的知识,希望对你有一定的参考价值。
类内部方法外部定义的变量为成员变量,方法内部定义的变量为局部变量。
局部变量为基本数据类型(int,long,string,double等)的存储在虚拟机栈中,相应的数据也存放在栈中。
局部变量为引用类型(new)的变量本身存储在虚拟机栈中,相应的引用对象存放在堆中。
成员变量存储在该类在堆中生成的对象中。
方法的形参同局部变量管理。
局部变量在虚拟机栈中,属于线程私有,不会出现线程安全问题,随方法的执行结束消失。
成员变量在堆中,属于共享内存,会出现线程安全问题,所以在多线程的使用中需要考虑同步处理,在对象引用释放之后等待垃圾回收处理。
以上是关于java变量存储的主要内容,如果未能解决你的问题,请参考以下文章