在java中只有值调用,没有引用调用。如果我们调用一个传递值的方法,它被称为按值调用。在被调用方法中所做的更改在调用方法中不受影响。
通过在Java值呼叫的示例
【Java中的值调用和引用调用】在按值调用的情况下,原始值不变。举个简单的例子:
class Operation{
int data=http://www.srcmini.com/50;
void change(int data){
data=data+100;
//changes will be in the local variable only
} public static void main(String args[]){
Operation op=new Operation();
System.out.println("before change "+op.data);
op.change(500);
System.out.println("after change "+op.data);
}
}
Output:before change 50
after change 50
通过在Java值呼叫的另一个实施例
通过引用原始值调用的情况下,如果我们做的调用方法的改变而改变。如果我们在任何地方原始值的传球对象,原始值将被改变。在这个例子中我们传递对象作为一个值。让我们举一个简单的例子:
class Operation2{
int data=http://www.srcmini.com/50;
void change(Operation2 op){
op.data=op.data+100;
//changes will be in the instance variable
} public static void main(String args[]){
Operation2 op=new Operation2();
System.out.println("before change "+op.data);
op.change(op);
//passing object
System.out.println("after change "+op.data);
}
}
Output:before change 50
after change 150
推荐阅读
- Java strictfp关键字
- 一款高颜值的 MySQL 管理工具,超好用。。
- Javaweb|mybatis框架基础与核心知识总结与代码实战
- java|Java深入-框架技巧
- 基础|MyBatis框架知识点总结
- Java递归
- Java Math类方法
- Java克隆对象
- Java对象类