JAVA对象创建过程内存图解

简介: JAVA对象创建过程内存图解1、类与对象类是现实事物的抽象,将现实事物描述成对应的类,类中封装了成员变量、构造方法、成员方法、set/get方法。比如说人,人都有哪些属性?姓名,年龄,性别...等等这些都属于人的属性,可以将其封装为类的成员变量。

JAVA对象创建过程内存图解
1、类与对象
类是现实事物的抽象,将现实事物描述成对应的类,类中封装了成员变量、构造方法、成员方法、set/get方法。

比如说人,人都有哪些属性?姓名,年龄,性别...等等这些都属于人的属性,可以将其封装为类的成员变量。人都有哪些行为?吃

饭,睡觉...等等都属于人的行为,可以将其封装为类的成员方法。那么就可以定义一个Person类来描述人这一类事物!

 

public class Person {

//成员属性
private String name;//姓名
private int age;//年龄

  //成员方法
//吃饭
public void eat(){
    System.out.println("中午吃饭");
}
  //睡觉
public void sleep(){
    System.out.println("需要休息");
}
//空参构造
public Person() {
}
//带参构造
public Person(String name, int age) {
    this.name = name;
    this.age = age;
}
//getter/setter
public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public int getAge() {
    return age;
}

public void setAge(int age) {
    this.age = age;
}

}
2、对象的内存解释
对象在内存中的位置:对象由new关键字创建,如同数组,实体存在于堆内存中.任何事物均可以定义成类,创建对象,属于引用类型.而对象的引用变量是一个普通变量。存储的值是该对象堆内存中的地址.

 

创建对象:
public class Test {

public static void main(String[] args) {
    //创建对象
    Person p = new Person();
    //给成员属性赋值
    p.setName("CXK");
    p.setAge(18);
    //调用成员方法
    p.eat();
    p.sleep();
}

}
引用类型赋值代码解释:
 

引用类型赋值对应内存图 :


作者:ajax_JK
来源:CSDN
原文:https://blog.csdn.net/lwfr_jqw/article/details/91351357
版权声明:本文为博主原创文章,转载请附上博文链接!

相关文章
|
13天前
|
存储 Java 编译器
Java内存区域详解
Java内存区域详解
29 0
Java内存区域详解
|
23天前
|
缓存 算法 Java
Java内存管理与调优:释放应用潜能的关键
【4月更文挑战第2天】Java内存管理关乎性能与稳定性。理解JVM内存结构,如堆和栈,是优化基础。内存泄漏是常见问题,需谨慎管理对象生命周期,并使用工具如VisualVM检测。有效字符串处理、选择合适数据结构和算法能提升效率。垃圾回收自动回收内存,但策略调整影响性能,如选择不同类型的垃圾回收器。其他优化包括调整堆大小、使用对象池和缓存。掌握这些技巧,开发者能优化应用,提升系统性能。
|
27天前
|
Java
java8中List对象转另一个List对象
java8中List对象转另一个List对象
37 0
|
20天前
|
缓存 安全 Java
Java并发编程进阶:深入理解Java内存模型
【4月更文挑战第6天】Java内存模型(JMM)是多线程编程的关键,定义了线程间共享变量读写的规则,确保数据一致性和可见性。主要包括原子性、可见性和有序性三大特性。Happens-Before原则规定操作顺序,内存屏障和锁则保障这些原则的实施。理解JMM和相关机制对于编写线程安全、高性能的Java并发程序至关重要。
|
27天前
|
缓存 Java C#
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍(一)
【JVM故障问题排查心得】「Java技术体系方向」Java虚拟机内存优化之虚拟机参数调优原理介绍
76 0
|
1天前
|
设计模式 JavaScript Java
[设计模式Java实现附plantuml源码~行为型] 对象状态及其转换——状态模式
[设计模式Java实现附plantuml源码~行为型] 对象状态及其转换——状态模式
|
2天前
|
Java 程序员 数据库连接
Java从入门到精通:3.3.2性能优化与调优——内存管理篇
Java从入门到精通:3.3.2性能优化与调优——内存管理篇
Java从入门到精通:3.3.2性能优化与调优——内存管理篇
|
2天前
|
存储 安全 Java
滚雪球学Java(19):JavaSE中的内存管理:你所不知道的秘密
【4月更文挑战第8天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
29 4
滚雪球学Java(19):JavaSE中的内存管理:你所不知道的秘密
|
3天前
|
Java
Java基础之对象的引用
Java基础之对象的引用
5 0
|
7天前
|
Java
Java中如何克隆一个对象?
【4月更文挑战第13天】
15 0