[問題] 繼承及變數問題
假設我有幾個class如下
public class main {
public static void main(String[] args) {
// TODO Auto-generated method stub
class2 c2 =new class2();
c2.run();
}
}
public class class1{
protected int i;
class1(){
i=2;
}
}
public class class2 extends class1 {
class2(){
}
private void change(int i){
++i;
System.out.println("change i:"+ i);
}
public void run(){
change(i);
System.out.println("c2 i:"+i);
}
}
我用class1放我想放的變數
用class2去繼承class1
在main中使用class2 run method
可是我在class2中想要寫一個method來修改i
但是傳進去的變數在改變值離開後
到了外面值還是原本的
想問一下java 有call by reference的機制嗎
還是只能全部寫在同一個method內了?
麻煩大家幫忙解惑一下 感激不盡~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 119.14.239.33
推
03/09 17:44, , 1F
03/09 17:44, 1F
→
03/09 18:42, , 2F
03/09 18:42, 2F
推
03/09 18:55, , 3F
03/09 18:55, 3F
推
03/09 20:46, , 4F
03/09 20:46, 4F
討論串 (同標題文章)