java对象是怎么在jvm中new出来的,在内存中查看java对象成员变量字段属性值

java对象是怎么在jvm中new出来的

查看java对象字段属性在内存中的值

java 对象 创建 流程

附上java源码

java 复制代码
public class MiDept {

    private int innerFiled=999;

    public MiDept()  {
        System.out.println("new MiDept--------------");
    }

    public String show(int data) {
        System.out.println("mi--------------"+data);
        return "yym-invoke-method";
    }

    public int getInnerFiled() {
        return innerFiled;
    }

    public void setInnerFiled(int innerFiled) {
        this.innerFiled = innerFiled;
    }
}


public class GDBDebugJava {

    public static int static_field = 8888;
    MiDept miDept0=null;
    MiDept miDept1=null;
    MiDept miDept2=null;

    public static void main(String[] args) {
        GDBDebugJava gDBDebugJava = new GDBDebugJava();
        int i=0;
        try {
            TimeUnit.SECONDS.sleep(1);
            System.out.println("mi"+i++);
        }catch (Exception e) {
            e.printStackTrace();
        }
        Thread.currentThread().setName("yym");
        gDBDebugJava.miDept0 = new MiDept();
        gDBDebugJava.miDept0.setInnerFiled(666);
        System.out.println(gDBDebugJava.miDept0.show(123456));

    }


}

1、分配java对象内存 jvm源代码oop obj = klass->allocate_instance(CHECK);

2、打印java对象在内存中地址

3、使用gdb attach 28965 java进程 查看java对象int字段属性在内存中值

计算器转换10十进制数字

相关推荐
毕设源码-朱学姐1 分钟前
【开题答辩全过程】以 日程管理系统为例,包含答辩的问题和答案
java
a努力。4 分钟前
京东Java面试被问:双亲委派模型被破坏的场景和原理
java·开发语言·后端·python·面试·linq
冰暮流星5 分钟前
javascript赋值运算符
开发语言·javascript·ecmascript
谢娘蓝桥5 分钟前
adi sharc c/C++ 语言指令优化
开发语言·c++
小毛驴85010 分钟前
Maven同时配置阿里云仓库和私有仓库
java·阿里云·maven
刘975312 分钟前
【第25天】25c#今日小结
java·开发语言·c#
不如打代码KK14 分钟前
Springboot如何解决跨域问题?
java·spring boot·后端
豆沙沙包?16 分钟前
2026年--Lc330-394. 字符串解码(栈)--java版
java·开发语言
蓝程序16 分钟前
Spring AI学习 程序接入大模型
java·人工智能·spring
nice_lcj52018 分钟前
数据结构之树与二叉树:重点梳理与拓展
java·数据结构