JVM管理内存

package jvm;

/** JVM管理内存F */
public class JVMOfRAM {

 /** 类中有方法,属性,对象他们在内存中是怎么被JVM分配的? */

 /**
  * 数据:放在堆和栈里面 堆:放的对象:new 类名(参数);
  *  栈:放的是方法和变量,主方法和调用的方法,基本类型变量和引用变量。
  * 代码区:存放方法的代码
  */

 public static void m1(int a, int b) {
  int temp = a;
  a = b;
  b = temp;
 }

 public static void m2(int a) {
  a = a + 1;
 }

 public static void m3(User p) {
  p.setAge(35);
 }

 public static void m4(User a, User b) {
  User temp = a;
  a = b;
  b = temp;
 }

 public static void main(String[] args) {
  int a = 10;

  int b = 20;

  int c = 30;

  System.out.println("****main of a,b,c****start********");
  System.out.println("a=  " + a);
  System.out.println("b=  " + b);
  System.out.println("c=  " + c);

  System.out.println("***m1(a,b)a,b进行交换方法**********");

  m1(a, b);
  System.out.println("a=  " + a);
  System.out.println("b=  " + b);

  System.out.println("*****m2(c) c的值加1*********");
  m2(c);
  System.out.println("c=  " + c);

  System.out.println("******m3(u)**u.setAge(35);*******");
  User u = new User();//User 类中的属性age初始化为10;
  System.out.println("User 类中的属性age初始化为:"+u.getAge());
  m3(u);
  System.out.println("u.getAge()=  " + u.getAge());
  

  System.out.println("*****m4(u1,u2)****u1和u2进行交换****");
  User u1 = new User();
  User u2 = new User();
  u1.setAge(100);
  u2.setAge(50);
  m4(u1, u2);
  System.out.println("u1.getAge()=  " + u1.getAge());
  System.out.println("u2.getAge()=  " + u2.getAge());
  System.out.println("*******main of*****end***************");

 }
 
 /*****main of a,b,c****start********
 a=  10
 b=  20
 c=  30
 ***m1(a,b)a,b进行交换方法**********
 a=  10
 b=  20
 *****m2(c) c的值加1*********
 c=  30
 ******m3(u)**u.setAge(35);*******
 User 类中的属性age初始化为:10
 u.getAge()=  35
 *****m4(u1,u2)****u1和u2进行交换****
 u1.getAge()=  100
 u2.getAge()=  50
 *****************end****************/
}

package jvm;

public class User {
 private int age = 10;

 public int getAge() {
  return age;
 }

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

}

 

上面是一个简单的例子,上面的结果自己画画内存空间图就知道了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值