java之值传递与地址传递

值传递与地址传递

  • 值传递
  • 引用传递

值传递

//实例一:值传递
public class ValueDemo{public static void main(String[] args){int x = 10;System.out.println("x="+x);}public static void method(int mx){mx = 20;}
}

在这里插入图片描述
值传递:是指在调用函数时将实际参数复制一份到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。

引用传递

public class RefDemo1{public static void main(String[] args){Duck d = new Duck();method(d);System.out.println("Duck age ="+d.age);}public static void method(Duck duck){duck.age = 5;}
}
class Duck{int  age = 2; //省略封装
}

对象的地址传递
在这里插入图片描述
字符串的地址传递
字符串本身就是一个对象

public class RefDemo2{String name = "小飞";method(name);System.out.println("name="+name);public static void method(String sname){sname = "小备";}
}

在这里插入图片描述

//示例四:String传递
public class RefDemo3{public static void main(String[] args){Person p = new Person();method(p);System.out.println("person name= "+p.name)}public static void method(Person per){per.name = "备备";}
}
class Person{String name = "飞飞";
}

在这里插入图片描述


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部