Java高阶部分知识点汇总(三)-内存空间的引用

举报
格图洛书 发表于 2021/12/26 00:58:02 2021/12/26
【摘要】 前言 在前面给大家展示的代码中,有这样一行代码 Student stu = new Student(); 这行代码创建了一个Student对象,这个对象被赋给stu变量。今天我们就来好好学习一下这行代码的运行的具体过程,以及引用数据类型中引用二字的意义,也会带着大家将实参与形参之间的关系弄明白。本篇中使用的类定义如下: ...

前言

在前面给大家展示的代码中,有这样一行代码

Student stu = new Student();
 

这行代码创建了一个Student对象,这个对象被赋给stu变量。今天我们就来好好学习一下这行代码的运行的具体过程,以及引用数据类型中引用二字的意义,也会带着大家将实参与形参之间的关系弄明白。本篇中使用的类定义如下:

class Student{
      String name;    int age;    public Student(String name,int age){
          this.name = name;        this.age = age;    }    public Student(){}}
 

一.内存空间

从Student类的定义来看,Student的对象应该包括两个成员,但是成员是需要内存来储存的,因此我们在创建Student对象时,必然要先给对象的成员分配适当的内存空间用以存储数据。我们可以简单的把一个对象在内存中的存储形式看作下图。

可以看到Student对象由多个内存块共同组成。当我们把这个对象赋值给变量时,Java的做法是让变量指向这个对象,也就是说变量里面存放的仅仅只是一个引用(内存地址)&#x

文章来源: wenyusuran.blog.csdn.net,作者:文宇肃然,版权归原作者所有,如需转载,请联系作者。

原文链接:wenyusuran.blog.csdn.net/article/details/108676520

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。