我有一個叫做City的超類,還有一些繼承自這個類的子類。例如倫敦和紐約。這些子類中的每一個都有自己獨特的方法和實例變量。目標C創建動態對象的策略
當我的應用程序啓動我地理編碼當前位置,並根據實例子類在哪個城市我現在願意加入,
現在我有多個屬性定義訪問這些類,所以
@property (nonatomic, strong) London *london;
@property (nonatomic, strong) NewYork *newYork;
...
...
我只會在任何時候需要一個此類型的對象,所以只會定義一個用於訪問此對象的屬性。像
@property (nonatomic, strong) City *city;
有沒有辦法可以動態創建我需要的子類而不必聲明多個屬性?
你有'倫敦'和'紐約'的課程有點令人擔憂。爲什麼你需要專門的子類?爲什麼不是一個通用的'City'類,然後可以查詢(類似於字典,也許?)以獲取特定信息? –
@DaveDeLong +1他到那裏聽起來像是一個可怕的設計模式。 –
@DaveDeLong我認爲子類化在這裏效果最好,因爲每個城市都有自己獨特的實例變量和方法,只適用於特定的城市。對於人口,地塊等通用事物,這些都是從超類繼承而來。 – KJF