composition

    0熱度

    4回答

    我之前對裝飾器模式的理解是,您繼承了Window和WindowDecorator,然後在重寫的方法中,在調用Window的所述方法的實現之前做一些額外的工作。以下類似: public class Window { public virtual void Open() { // Open the window } } public class Loc

    2熱度

    6回答

    我想實現這樣的:現在 class Base { public: Base(string S) { ... }; } class Derived: Base { public: int foo; string bar() { return stringof(foo); // actually, s

    4熱度

    6回答

    首先,我知道旁邊沒有關於語言的理論,我幾乎不知道除了Java的其他任何語言,但我有一個想法,我認爲將是很酷,但我需要你們告訴我: 一:爲什麼它吮吸 b:語言X是如何了,多年來 C:我的心裏是怎麼吸 d:以上所有 的想法會給組成一樣簡單的代碼重用extends做的。 所以,如果你有這樣一個類: public interface A { public void methodInA();

    8熱度

    8回答

    組合A - >基金1 組合A - >基金2 組合A - >基金3 我不能幀我的句子沒有未使用的/有。但1 & 2之間, 1)具有: class PortfolioA { List<Fund> obj; } 2)是: class PortfolioA : List<Fund> { } 哪一個你認爲是從可擴展性,易用性的好點?儘管語法變化很小,但我仍然可以使用我的資金。

    9熱度

    2回答

    讓說我有一個這樣的類: public sealed class Foo { public void Bar { // Do Bar Stuff } } 而且我希望把它擴大到添加的東西超出了一個擴展方法可以做....我唯一的選擇是組成: public class SuperFoo { private Foo _internalFoo;

    3熱度

    1回答

    當比較實體和聚合根時,我使用的是從Oren Eini借來的ABC:Generic Entity Equality。對於價值對象,我同樣很巧妙。我用吉米Bogard的價值對象ABC:Generic Value Object Equality 現在我的問題是;我應該贊成繼承這些ABC嗎?或者我應該使用通用的equality/comparer並且改寫上述行爲?我打算重用上述的相等實現。 我認爲這回到了S

    7熱度

    10回答

    我要試着在一個簡單的例子中提出我的問題... 假設我有一個抽象基類Car。汽車有一個基本的引擎對象。我在抽象Car類中有一個方法StartEngine(),它將引擎的啓動委託給Engine對象。 如何讓Car的子類(如Ferrari)將Engine對象聲明爲特定類型的引擎(例如TurboEngine)?我需要另一個車類(TurboCar)嗎? 我繼承了一個普通的老引擎對象,我不能重新聲明(或覆蓋)

    2熱度

    8回答

    我這個昨天寫在一類Foo從酒吧繼承: public override void AddItem(double a, int b) { //Code smell? throw new NotImplementedException("This method not usable for Foo items"); } 納悶隨後,如果這是一個可能的跡象,我應該使用一個Bar,

    2熱度

    2回答

    我有句話,例如 去年,John Doe搬到了紐約。 現在我分裂句成單個的詞語,我得到: 陣列(「約翰」,「李四」,「感動」,「對」,「新」,「紐約」 ,'last','year') 這很容易。但是,我想結合單個單詞來獲得所有組成的術語。如果組成的術語是有意義的,我不希望所有這些都是。該操作的結果應該是這樣的: 約翰,李四,李四,感動,感動李四,李四移動,於遷,能源部搬到... 的單詞應該按照k個部

    0熱度

    5回答

    我試圖讓下面的工作,但我不知所措...... class Foo { public $somethingelse; function __construct() { echo 'I am Foo'; } function composition() { $this->somethingelse =& new SomethingEls