首页 > 学院 > 开发设计 > 正文

方法传参,传对象和传对象的属性区别

2019-11-08 02:15:27
字体:
来源:转载
供稿:网友
>>传递基本数据类型:传递给方法体的是一个具体的值,变量的类型属于基本数据类型,且属于局部变量,存在栈中,执行完该局部变量所在的方法体后,局部变量占用的内存空间就会销毁,变动的值改变后无法带回来。>>传递引用数据类型:传递给方法的是一个对象在堆内存中的首地址,该局部变量所在的内存空间回被释放,变动的值可以带回来,因为:栈中局部变量在被释放前改变了堆中对象属性的值。class Person{ int age; String name; public Person(int age,String name){ this.age = age; this.name = name; } public int addAge(int age){ return age+=1; } public int addAge(Person p){ return p.age+=1; }}Person p = new Pserson(23,"哈哈");int a = p.addAge(p.age);int b = p.addAge(p);//输出的a仍然是23,传的基本数据类型System.out.PRintln(a);//输出的a是24,传的引用数据类型System.out.println(b);
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表