ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

java内存分析入门

2022-07-24 13:01:13  阅读:159  来源: 互联网

标签:java 入门 int age id Person 内存 tom public


上菜代码 搞起来

public class Person {
    int id ;
    int age;
    String school;

    Person(int id,int age,String school){
        this.id = id;
        this.age = age;
        this.school = school;
    }

    public void setAge(int a){
        age = a;
    }
}

 

public class Test {
    public static void main(String[] args) {
        Test t = new Test();
        int age = 40;
        Person tom = new Person(1, 20, "济南");
        Person jack = new Person(2, 20, "北京");
        t.Change1(age);
        t.Change2(tom);
        t.Change4(jack);
        System.out.println(tom.id+"-----"+tom.age+"-----"+tom.school+"-----");
        //  3 32 上海
        System.out.println(jack.id+"-----"+jack.age+"-----"+jack.school+"-----");
        //  2 66 北京
    }

    public void Change1(int i) {
        i = 1001;
    }
    // 执行方法的时候会重启一个栈帧 这样是修改不了tom的值的
    public void Change2(Person p){
        p = new Person(3,32,"上海");
    }

    public void Change4(Person p){
        p .setAge(66);
    }
}

 

这个内存分析是jvm虚拟机中的内存和我们的计算机内存不是一个东西。

上面图片是执行到new Person(1, 20, "济南");的内存状态

 

标签:java,入门,int,age,id,Person,内存,tom,public
来源: https://www.cnblogs.com/-alvin/p/16514319.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有