请问java里给成员java给变量赋值值,那成员变量会在哪个内存空间里

Java 中final修饰的成员变量在创建对象时候会不会被附初值
我看周志明的jvm说在创建对象时候要给所有的内存空间都要初始化为零值(不包括对象头),我就想如果是final类型的会不會被初始化微零值再进行程序员自己编写的赋值语句呢那样的话是不是就是两次对finaljava给变量赋值值了?

集结各类场景实战经验助你开发運维畅行无忧

C++中定义一个class不能在定义成员变量时给出初始化值(老师说类是模板,只有在实例化成对象之后才真正占用内存空间因此不能赋初值),只能在构造函数中给出Java中定义一个class却... C++中定义一个class,不能在定义成员变量时给出初始化值(老师说类是模板只有在实例化成对象之后才真正占用内存空间,因此不能赋初值)只能在构造函数中给出
Java中定义一个class,却可以直接给出初始值
为什么?编译时的机制不一样么类在编译时,它的field instance究竟要不要占内存空間

具体我也忘了,楼主可以用工具调试一下观察内存变量变化

你对这个回答的评价是?

还有java和c的存储机制也不懂 一个是 不同地址 一个 昰相同地址 int a=+a=-a=*a;java的结果是正整数 c的结果是0 自己分写的 不知道能不能帮到你

你对这个回答的评价是

我要回帖

更多关于 java给变量赋值 的文章

 

随机推荐