JavaSE---值传递_引用传递

2021-09-18 14:13

阅读:645

标签:地址   highlight   rri   nsf   sys   main   col   ros   turn   1、what?     值传递:       将实际参数的副本 传递,这样对参数作修改,不会影响到实际参数;     引用传递:       将 实际参数的地址 直接 传递,对参数的修改,影响实际参数;     Java中只有 值传递; public class ValueOrReferenceTransferTest { static String say(String name){ name = "rose"; return name; } static int say(int a){ a = 4; return a; } static Person say(Person person){ person.setName("rose"); return person; } static Person say1(Person person){ return new Person("jack"); } public static void main(String[] args) { String name = "jack"; String s = say(name); System.out.println("name:"+name+" ,s:"+s);// name:jack ,s:rose int a =1; int i = say(a); System.out.println("a:"+a+" ,i:"+i);// a:1 ,i:4 Person person = new Person("rose"); Person person1 = say(person); System.out.println("p:"+person+" ,p1:"+person1);// p:Person{name=‘rose‘} ,p1:Person{name=‘rose‘} Person person2 = say1(person); System.out.println("p:"+person+" ,p2:"+person2);// p:Person{name=‘rose‘} ,p2:Person{name=‘jack‘} } public static class Person{ private String name; public Person(String name) { this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "Person{" + "name=‘" + name + ‘\‘‘ + ‘}‘; } } }   JavaSE---值传递_引用传递标签:地址   highlight   rri   nsf   sys   main   col   ros   turn   原文地址:https://www.cnblogs.com/anpeiyong/p/14886326.html


评论


亲,登录后才可以留言!