2011-08-19 94 views
1

我正在寫一個包含幾個(確切的說是4個)服務的android應用程序。繼承靜態方法和字段

每個服務都有一個標有'running'的靜態布爾字段。它在創建服務時設置爲true,在銷燬時設置爲false。

每個服務也有「isRunning()」,簡單地返回「跑步」

目前,我在所有4個服務相同的代碼來提供此功能標記的靜態方法。理想情況下,代碼應該位於一個地方。這怎麼能實現?一個界面?一個抽象類?都不是?

(我認爲的事實,這一領域和方法上的答案靜電的場所限制)

回答

1

如果方法必須是靜態的,可以對涉及的課程,那麼他們必須屬於個人類;沒有辦法繞過它。但是也許你可以有一個靜態地圖Class -> boolean,它可以在一些中心位置跟蹤正在運行的服務;當服務啓動時,它通過爲此目的調用(單個)靜態方法來在該映射中設置適當的值。然後當任何事情需要知道ServiceClass是否正在運行時,他們使用ServiceClass.class作爲關鍵字來查詢該映射。聽起來不錯?

+0

是的,我很喜歡這個想法。 – jwheels