我有一個程序需要繼承broadcastreceiver和MapActivity的屬性。其實我想發送當前位置(經度和緯度)從朋友收到短信。我有一個代碼與我,但不知道如何同時繼承了classes.Here的性質是我的代碼:如何在一個類中繼承兩個類的屬性?
請給我一些想法來解決這個或任何其他的方法,如果這是不可能的?
我有一個程序需要繼承broadcastreceiver和MapActivity的屬性。其實我想發送當前位置(經度和緯度)從朋友收到短信。我有一個代碼與我,但不知道如何同時繼承了classes.Here的性質是我的代碼:如何在一個類中繼承兩個類的屬性?
請給我一些想法來解決這個或任何其他的方法,如果這是不可能的?
由於java禁止多重繼承,你實際上不能。由於您正在計劃隱蔽svervelliance的應用程序,您不需要任何活動 - 只是一個廣播接收器 它與位置服務溝通,並在某處發送獲得的位置。
Java不支持多繼承,但是您可以實現儘可能多的接口,因此您可以通過組合來實現。這是一個粗略的概述,但有很多方法可以做到。基本思想是,對於要從其中繼承的任何一個或兩個類,您都有對某個實現的引用,並且通過委派實現相同的接口。
interface MapActivity {
Coordinates getCoordinates();
...
}
class SomeMapActivityImpl {
...
}
class ReceivelocationActivity extends BroadcastReceiver implements MapActivity {
private MapActivity mapActivity = new SomeMapActivityImpl();
public Coordinates getCoordinates() {
return mapActivity.getCoordinates();
}
...
}
但我的代碼使用位置管理涉及getsystemservice()這是顯示error.Can你告訴我如何修改我的代碼獲取經度和緯度沒有繼承MapActivity? –
你敢不敢顯示你的錯誤? –
我修復了我的code.Here是我更新後的代碼pastebin.com/yKitMftU但是一個新問題出現了。它不是發送它的位置(經度和緯度),而是發送發件人的位置,發件人的位置在發件人發送後自動發送。我想要這個代碼發送接收者的位置而不是sender.Can你可以幫我嗎? –