3-引用传递

1-数组的传递引用
/**
    数组引用传递
 */
public class ArrayDemo04 {
    public static void main(String[] args) {
        //静态初始化数组
        int[] arr = {1, 2, 3, 5, 9};

        //传递数组引用
        fun(arr);

        //输出结果
        for(int i=0; i<arr.length; i++){
            System.out.println(arr[i] + ", ");
        }
    }

    //接收数组引用类型
    public static void fun(int[] x){
        x[0] = 6;
    }
}
1-2数组的传递引用图解

1665530-20190629234847394-1213994755.jpg

2-1 对象引用传递

引用数据类型就是指一段堆内存空间可以同时被多个栈内存空间所指向

public class Persion {
     String name; //声明姓名属性
     int age; //声明年龄属性

    public void tell(){ //取的信息方法
        System.out.println("姓名:" + name + ", 年龄:"+ age);
    }

}
public class ClassDemo05 {
    public static void main(String[] args) {
        Persion s1 = new Persion(); //声明对象,并且实例化
        Persion s2 = null;

        s2 = s1; //将s1的堆内存空间的使用权给s2
        s1.name = "科比"; //设置s1对象的name属性的内容
        s1.age = 22; //设置s1对象的age属性

        //设置s2对象的内容,实际上就是设置s1对象的内容
        s2.age = 44;

        //输出结果
        System.out.println("s1对象中的内容-----");
        s1.tell();

        System.out.println("s2对象中的内容-----");
        s2.tell();
    }
}
2-2面向对象的传递引用图解

1665530-20190702122654794-1041579647.png

2-3面向对象引用传递
public class ClassDemo05 {
    public static void main(String[] args) {
        Persion s1 = new Persion(); //声明对象,并且实例化
        Persion s2 = new Persion(); //声明对象,并且实例化

        s2 = s1; //将s1的堆内存空间的使用权给s2
        s1.name = "科比"; //设置s1对象的name属性的内容
        s1.age = 22; //设置s1对象的age属性

        s2.name = "杜兰特"; //设置s2对象的name属性内容
        s2.age = 20; //设置s2的age属性内容

        s2 = s1; //将s1的引用传递给s2

        //输出结果
        System.out.println("s1对象中的内容-----");
        s1.tell();

        System.out.println("s2对象中的内容-----");
        s2.tell();
    }
}
2-4面向对象的传递引用图解

1665530-20190702155055980-458366504.png

转载于:https://www.cnblogs.com/Guard9/p/11108328.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值