在堆中的对象是什么呢?
在java中全局变量是放在方法区的常量池的,所以会有的是共享之意在,当然局部变量是放在栈中的:
1.存储的全部是对象,每个对象都 包含一个与之对应的class的信息。(class的目的是得到操作指令)
2.jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用,只存放对象本身
首先这里面有一个解释:
https://www.iteye.com/blog/yangshangchuan-2021423
class Text{
public static void main(String[] args) {
_内存_ n=new _内存_();
n.name="faladi";
n.price=400;
n.type="跑车";
n.stop();
_内存_ n1=new _内存_();
n.name="奥迪";
n.price=400;
n.type="跑车";
n.running();
}
}
public class _内存_ {
String name;
String type;
double price;
void running() {
System.out.println("车会跑");
}
void stop() {
System.out.println("车会刹车");
}
}
在Java中对象不能直接来操作只能用引用来进行操作,当我们创建类的时候会自动的调用构造函数进行对我们的属性进行修改。
在平常我们所创建的对象中在堆中创建的是对象的基本类型的数据,大小也主要由创建的基本数据确定,但其中也有指向引用,这个是来指向方法区中的方法的指针,当我们调用一个方法的时候是先在栈中有个地址指向对象,在对象中那个地址中保存着方法区中的方法地址,这样调用方法的。
在暂存器中在发生子过程跳转的过程中,会有个LR寄存器,记录着跳转之前的下一个指令的地址,当然当跳转的子函数嵌套的调用的时候会有把地址放到栈中进行存储,在最后返回的时候一一返回在最后跳到原来LR寄存器存储的地址中,在接着进行最初原来程序的运行。
中断中:cpu做了哪些事下面有。
https://zhidao.baidu.com/question/1512710059563018260.html?qbl=relate_question_5&word=pc%D6%B8%D5%EB%BC%C4%B4%E6%C6%F7%BB%E1%B7%C3%CE%CA%B6%D1%D5%BB%C2%F0%3F
那一般在JAVA对象中内存占用多大呢?
https://mp.weixin.qq.com/s?__biz=MzI5MzYzMDAwNw==&mid=2247487570&idx=2&sn=b548f907d355d72e7ddfec1bf943d6e1&chksm=ec6e690adb19e01c86720130b14b4eb066ff4de4592ecf00339487f5381d89d3ac5ed254148d&mpshare=1&scene=23&srcid=&sharer_sharetime=1574131193638&sharer_shareid=4be2d080afe350d69d6ae5ff6f9eec3c#rd