0
我的Java類有一些問題。當我調用函數(例如int getCapacity(Edge e))時,它會更改我的對象(chagne Edge e),我不想那樣做。不應該只有void函數改變對象嗎?任何幫助?從not void函數修改對象
public class Edge{
private int start;
private int end;
private int capacity;
private int flow;
public Edge(int p, int k, int cap) {
this.start = p;
this.end = k;
this.capacity = cap;
this.flow=0;
}
public void setStart(int s){
this.start = s;
}
public static int getCapacity(Edge e){
e.setStart(-1);
return e.capacity;
}
public static void main(String[] args){
Edge e= new Edge();
int k=getCapacity(e));
e.print();
}
}
謝謝!
我只是不想改變我的對象不是void函數。我插入了一部分代碼「e.setStart(-1);」只是爲了測試它。 關於吸氣劑,我稍後需要它。 ;)在其他類中。 – newOne 2013-03-15 14:16:26
另一個例子是一個迭代器。它會改變它的狀態,每次調用並返回一個值。 – 2013-03-15 14:18:09
@newOne:好的,不要這樣做 - 但它不是*不正確的代碼。 – 2013-03-15 14:26:07