[英]Accessing class A from class B
我正在做這件學校的工作。 它關於垃圾箱包裝問題,但它有點修改關於手推車。 小車內可以有兩個或更多個樁。 到目前為止我所做的是一個包裹類和樁類。 我需要遵循的規則很少。 其中之一就是當我把包裹(寬度3)放在堆里時,我不能把包裹(寬度4)放在它上面。
是的,我將有小班,班級和包裹類。
我在這里嘗試做的是在樁類中創建一個函數,它將樁的寬度更改為剛剛放入的Parcel的寬度。如何從樁類中訪問宗地寬度? 會不會是getW()? 非常感謝幫助。 或者我應該在手推車課程中這樣做? 不確定如何實現這一點。
public class Parcel {
private int H;
private int W;
private int customer;
Parcel(int inH, int inW, int inCustomer){
this.H = inH;
this.W = inW;
this.customer = inCustomer;
}
public int setH(){
int x = (int )(Math.random() * 50 + 1);
return x;
}
public int setW(){
int y = (int )(Math.random() * 100 + 1);
return y;
}
public int getW(){
return W;
}
public int getH(){
return H;
}
你的setW()
被錯誤命名。 它應該是randomizeWidth()
。 你應該考慮做的是給上面的類一個有效的寬度setter方法, setWidth(int width)
設置W變量(將它重命名為width
以符合Java命名約定 - 變量名應該以小寫字母開頭)以便外部類可以調用方法並設置寬度。
樁的寬度和其他屬性同樣應該有有效的定位器和吸氣劑。 然后,樁可以調用上面的Parcel方法並使用該信息來設置其寬度。 如果Pile對象包含Parcel對象,那么Pile可能更好地根據它所包含的Parcel對象的寬度設置自己的寬度。 所以我的建議是Parcel 沒有設置樁的寬度。
假設樁有一個parcel類型的字段,你可以調用getter。
public class Pile
{
Parcel parcel;
public Pile()
{
//instanciate parcel here;
}
public void someMethod
{
int w = this.parcel.getW();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.