0
点赞
收藏
分享

微信扫一扫

【经验分享】图片自适应窗口大小css;CSS实现背景图片全屏铺满自适应的方式

爱做梦的老巫婆 2024-05-12 阅读 9

引用传递(pass by reference)是指在调用方法时将实际参数的地址直接传递到方法中,在方法中对参数所进行的修改,将影响到实际参数。

值传递(pass by value)是指在调用方法时将实际参数拷贝一份传递到方法中,在方法中对参数修改,不会影响到实际参数。

基本类型传的是值的拷贝,对拷贝变量的修改不影响原变量,当传的是引用类型时,传的是引用地址的拷贝,但是拷贝的地址和真实地址指向的都是同一个真实数据,可以修改原变量中的值,当传的是String类型时,虽然拷贝的也是引用地址,指向的是同一个数据,但是String的值不能被修改。

String c= new String("abc");

在java heap中创建了“abc”,然后调用String的构造函数

public String(String original) {
        this.value = original.value;
        this.hash = original.hash;
    }

在构造函数中,String将底层的字符串数组赋值给value。Array的赋值只是引用的赋值,所以上述new操作并不会产生新的字符串字面值。但是new操作新创建了一个String对象,并将其赋值给了c。String的不可变性还在于,String的所有操作都会产生新的字符串字面量。原来的字符串是永远不会变化的。字符串不变的好处就在于,它是线程安全的。任何线程都可以很安全的读取字符串。

举报

相关推荐

0 条评论