面向对象(上)-方法-Java的值传递机制

一、针对于方法内变量的赋值

  1. 举例
public class ValueTransferTest {
    public static void main(String[] args) {
        System.out.println("******基本数据类型:******");
        int m = 10;
        int n = m;
        System.out.println("m = " + m + ",n = " + n);
        n = 20;
        System.out.println("m = " + m + ",n = " + n);

        System.out.println("******引用数据类型:******");
        Order o1 = new Order();
        o1.orderId = 1001;

        Order o2 = o1;//赋值以后,o1和o2的地址值相同,都指向了堆空间中同一个对象实体
        System.out.println("o1.orderId = " + o1.orderId + ",o2.orderId = " + o2.orderId);
        o2.orderId = 1002;
        System.out.println("o1.orderId = " + o1.orderId + ",o2.orderId = " + o2.orderId);

    }
}

class Order{
    int orderId;
}
  1. 规则
  • 如果变量是基本数据类型,此时赋值的是变量所保存的数据值
  • 如果变量是引用数据类型,此时赋值是的变量所保存的数据的地址值

二、针对于方法的参数概念

  1. 形参:方法定义时,声明的小括号内的参数
  2. 实参:方法调用时,实际传递给形参的数据

三、Java中参数传递机制:值传递

规则:

  • 如果参数是基本数据类型,此时实参赋给形参的是实参真是存储的数据值
  • 如果参数是引用数据类型,此时实参赋给形参的是实参存储数据的地址值

四、典型例题与内存解析

  1. 【例题一】参数类型为:基本数据类型
  2. 【例题二】参数类型为:引用数据类型
  3. 【例题三】
posted @ 2021-07-08 10:04  犄角旮旯是程序媛吖  阅读(41)  评论(0编辑  收藏  举报