后台服务Android中的位置监听器

时间:2012-09-01 11:48:00

标签: java android implementation locationlistener

哪种方法更好,直接实施LocationListener就像这样

public class BackgroundService extends Service implements LocationListener {}

或通常在班级中声明LocationListener

LocationListener locationListener = new LocationListener() {};

1 个答案:

答案 0 :(得分:9)

在第二段代码中,您必须在调用接口方法之前调用属性locationListener

在第一段代码中,您可以直接访问界面方法。

因此,如果您知道每个方法调用花费cpu时间然后直接在类中实现它而不是将其作为属性将是有益的。

在这种情况下,您有一个BackgroundService的引用,您可以使用它来访问LocationListener的方法

public class BackgroundService extends Service implements LocationListener {}

在这种情况下,您有2个引用,一个引用到 BackgroundService ,另一个引用到 locationListener

public class BackgroundService extends Service {
    private LocationListener locationListener = new LocationListener() {};
}

但话说回来,如果你的程序没有关键的时间限制,那真的不重要。 最重要的是,您的代码是可读的。

我希望能回答你的问题。