JAVA栈和堆的内存分配,画出内存分析图!

JAVA栈和堆的内存分配,画出内存分析图!,第1张

程序一没有涉及到堆内存

程序二:

当new

Demo()时

在郑友腔堆内存中开辟一个空间

空间内有一条属性

为String类型的temp,初喊衫始化值为hello。

并把这个空间的地址赋给d1存在于栈内存中。这时d1就指向了new

Demo()

这个对象。当d1.temp="world"时,改变了堆内存中temp的值为world。输出语告塌句打印出d1.temp的值。

调用fun()方法,d1作为参数传入并把d1.temp的值改为MMM

。输出语句打印出d1.temp改变后的值。

我是个新手,菜鸟。刚开始自学java

如果有说得不对的地方

请高手勿喷。

也希望有前辈能指点指点。希望找个老师来教我。感激不尽!

只有一个10,

在理想情数陪况下,short s = 10的时候

内存结构图兆毕枣

执行int i = s:将族拆s所对应的内存地址给i,即如下图

内存结构

super()   方法是指调用该类的父类的构造方法   super方法的参数个数,类型都与父类的构造方法一致,否则编译不通过

在此处 就相当于在 子类 Dog 中的 构造方法里 调用了 它的父类-Animal类中的构造函数Animal("小狗")

调用的结果就是把Dog类中的name属性赋值成了仿誉"小狗山大隐"。

这里需要注意的一点是:在构造方法中调用逗厅父类的构造方法时,super()方法必须写在构造方法的第一句,否则编译会不通过


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12439704.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存