package com.test;
public class Callbyvalref {
int data = 50;
int x = 10;
void change(Callbyvalref call) {
call.data = call.data + 500;
}
void nochange(int x) {
x = x + 25;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Callbyvalref call = new Callbyvalref();
call.change(call);
System.out.println("Call By reference: " + call.data);
call.nochange(500);
System.out.println("Call By Value: " + call.x);
}
}
Call By reference: 550 Call By Value: 10
When I change
void nochange(int y) {
x = x + 25;
}
Call By reference: 550 Call By Value: 35
Both times Call.x printing different values.. any one can explain what is the changes happening when argument variable is changed..