其他分享
首页 > 其他分享> > 跟随学习第二十九天

跟随学习第二十九天

作者:互联网

创建对象内存分析

 //调用下面的那个类
 package oop;
 ​
 public class Demo06 {
     public static void main(String[] args) {
 ​
         Demo05 dog = new Demo05();
 ​
         dog.name = "旺财";
 ​
         dog.age = 5;
 ​
         dog.Pet();
 ​
         System.out.println(dog.name);
 ​
         System.out.println(dog.age);
    }
 }
 package oop;
 ​
 public class Demo05 {
 ​
     String name;
 ​
     int age;
 ​
     public void Pet(){
 ​
         System.out.println("汪汪汪");
    }
 ​
 }
 ​

解析图

  1. 当创建Demo05时就有方法区的Demo05和堆中的初始值

  2. 当用Demo06来调用时,就会生成栈中的dog,去调用堆中的初始值,方法区的Demo06将常量池中的旺财放置上去、

  3. 每当你new一个新的变量时就会在栈中生成一个新的引用变量名,调用方法和dog的调用时如出一辙的

  4. 而静态方法区是static的,每当类调用时静态方法就会被调用

标签:学习,调用,dog,System,跟随,第二十九,Demo05,public,out
来源: https://www.cnblogs.com/xiawan/p/14508761.html