簡體   English   中英

Java中的編程約定

[英]Programming conventions in java

關於Java中的編程約定,我有一個簡單的問題。

簡單-如果我將一個方法中的局部變量傳遞給另一(幫助)方法-我應該將其名稱保留為100%還是嘗試對其重命名?

看一下示例-我應該將helpermethods簽名中的變量totalAmount重命名為類似的名稱(例如total_amount或theTotalAmount)嗎?

private void myMethod() {

   int totalAmount = 0;
   // calculations where totalAmount is involved.

   myHelperMethod(totalAmount); // send totalAmount to a another method.

}

private void myHelperMethod(int totalAmount) {

    // use totalAmount here .....
}

絕對沒有義務保留相同的變量名。

只需選擇適合當地情況的名稱即可。

在您的示例中, myHelperMethod可能會接收任何金額作為參數,而不一定是totalAmount 我們僅將其命名為amount ,或任何其他描述其在此方法中實際作用的名稱。

即使在調用是針對變量的變量(可能是針對變量的表達式)的情況下,這兩個名稱在概念上也代表不同的事物,因此除非它們確實具有相同的含義,否則您不應將它們命名為相同的名稱。

形式參數表示名稱函數內部有意義的變量,而傳遞的變量表示名稱在函數外部有意義的變量。 這是一個例子:

// Function definition
static double computeDiscount(double originalPrice, double discountPercentage, double cap) {
    ...
}

// Function calls
double priceClothing = computeDiscount(clothingOrigPrice, discountPercentage, clothingDiscountCap);
double priceAccessories = computeDiscount(accessoriesOrigPrice, discountPercentage, accessoriesDiscountCap);

不,您不需要。 就像將水從一個玻璃杯倒入另一個玻璃杯一樣,水的價值將保持不變,玻璃的持有人將發生變化。

您可以決定名稱。 約定不告訴您應保留的名稱。 使用最能反映實體的名稱。 並且還要避免使用混淆的名稱。 在您的情況下,如果兩個“ totalAmount”實際上都代表totalAmount,那么您做出了正確的選擇。 如果不是,請重新考慮更改名稱。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM