簡體   English   中英

如果您不給新關鍵字命名,新關鍵字如何工作?

[英]how does the new keyword work if you dont give it a name?

我正在學習“構建器模式”設計模式。 我了解其中的大部分內容,但對new關鍵字感到困惑。 在本教程中,他在MealBuilder類中創建了Meal類型的對象,然后使用該對象調用方法addItem(...) 我不明白他在參數中傳遞了什么。 我知道new關鍵字創建了一個類的實例(實例又是一個用於創建對象的詞嗎?),但他沒有給它命名。 例如,我了解以下內容: Meal mealobject = new Meal(); 但我不明白這一點: new ChickenBurger();

如果你寫

Meal meal = new Meal();
Item burger = new ChickenBurger();
meal.addItem(burger);

那么這將以相同的方式進行。 但是,如果您不打算再次使用“漢堡”引用,則沒有必要創建它。 只是寫作

Meal meal = new Meal();
meal.addItem(new ChickenBurger());

更簡單,對於閱讀代碼的人來說很明顯,該項目僅被添加到集合(餐)中。

請注意,這不是硬性規定。 在某些情況下,您可能會決定對表達式使用命名引用將有助於闡明代碼的功能,尤其是在數據類型不清楚的情況下。

暫無
暫無

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

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