实例化对象时对应的JVM内存结构
程序员文章站
2022-03-26 21:02:23
本期博文主要深入讲解类和对象的使用,重点在实例化了一个类的对象之后,对应的JVM(Java虚拟机)的内存分布是怎样的。在语法级别上怎样完成对象创建呢?语法格式:类名 变量名 = new 类名();这样就完成了一个对象的创建。为了方便知识点的引入,设计一个学生类如下:public class Student{int stu_no;//学号String stu_name;//姓名int stu_age;//年龄String stu_addr;//家庭住址}同时,设计一个测试学生...
本期博文主要深入讲解类和对象的使用,重点在实例化了一个类的对象之后,对应的JVM(Java虚拟机)的内存分布是怎样的。
在语法级别上怎样完成对象创建呢?
语法格式:
类名 变量名 = new 类名();
这样就完成了一个对象的创建。
为了方便知识点的引入,设计一个学生类如下:
public class Student{
int stu_no;//学号
String stu_name;//姓名
int stu_age;//年龄
String stu_addr;//家庭住址
}
同时,设计一个测试学生类的测试类用来创建对象:
public class StudentTest{
public static void main(String[] args) {
//创建学生对象1
Student s1 = new Student();
//创建学生对象2
Student s2 = new Student();
}
}
Tips:图中反馈的信息很多,很重要
- 对于Student类当中的学号以及姓名等变量,叫做成员变量,与局部变量不同,如果说这些变量在声明之后没有初始化,将由系统给出缺省默认值。
- 对象和引用的区别?
对象是通过new运算符new出来的,在堆内存中存储。
但凡是保存了内存地址指向了堆内存当中的对象的变量都叫做“引用”。 - 对于同一个类new出来的对象,虽然这些对象有相同的成员变量名,但是各自的属性值也许不同,因此每个对象都分配的是独立的内存空间。
上期博客解答
第一个:method1形参个数不同,构成方法重载;
第二个:method2的返回值不同,不构成方法重载。
以上内容均为个人学习的一点心得,其中的知识点若有错误请留言提醒,若有侵权内容提醒马上删除。
本文地址:https://blog.csdn.net/pf6668/article/details/107371500
上一篇: MySQL系列之主从复制配置【十二】
下一篇: Flash详述