Java 值传递与引用传递
来源:互联网 发布:淘宝助理很卡 编辑:程序博客网 时间:2024/05/21 19:36
值传递
package com.vince.zhichuandi;
public class Zhichuandi {
// 值传递:在方法被调用的时候,传递的参数是按值的备份传递的,也就是说,传递之后形参和实参就互不相干了
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int x = 10; // 备份一个x的值为10
test(x);
System.out.println(x);
}
// 实参的值作为形参的初始值,对形参做了初始化,传递之后就互不相干了,,此时就算修改形参的值,实参的值也不会发生改变
public static void test(int x) {
System.out.println(x);
x = x * 2;
System.out.println(x);
}
}
结果
10
20
10
引用传递
package com.vince.zhichuandi;
public class Yinyongchuandi {
// 引用传递:在方法被调用的时候,传递的是值的引用,也就是对象的引用变量,那么传递前和传递后指向的是同一个内存空间
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
A a = new A();
System.out.println("a.age=" + a.age);
test(a);
// 测试实参的值,
System.out.println("调用之后" + a.age);
}
// 传递的是对象的引用变量指向的内存地址,地制的值是不会发生变化,,所以,形参和实参所指向的还是同一个内存地址,,形参改变的只是地址中的值
public static void test(A a) {
int m;
m = a.age = 20;
System.out.println(m);
}
}
class B{
public int age = 0;
}
a.age=20
20
调用之后20
- java值传递与引用传递
- java值传递与引用传递
- Java值传递与引用传递
- java 引用传递与值传递
- Java中的值传递与引用传递
- java中的值传递与引用传递
- java值传递与引用传递
- JAVA 值传递与引用传递详解
- Java值传递与引用传递
- Java 值传递与引用传递
- Java值传递与引用传递
- Java值传递与引用传递
- java中的值传递与引用传递
- Java值传递与引用传递
- Java 值传递与引用传递
- Java的值传递与引用传递
- Java中的值传递与引用传递
- java的值传递与引用传递
- JavaScript闭包
- 10、大数,高精度计算---百位大数
- 进程内和进程外Session
- 2014-06-20 日志
- Python中reduce、map、filter、apply、tuple函数
- Java 值传递与引用传递
- IllegalStateException: Can not perform this action after onSaveInstanceState
- 11、素数算法逐步优化
- 磁盘读写过程总结+debugfs总结
- poi操作doc、docx、xls、xlsx文档总结
- androd 调用系统拍照功能
- 关于android app跳转和从web跳转的问题(转载修正)
- 12、 枚举法---八皇后
- 【黑马程序员】java基础加强_JavaBean