我希望使用以下方法获取位置更新:FusedLocationProviderClient#RequestLocationUpdate(LocationRequest LocationRequest、LocationCallback LocationCallback、Looper Looper)
实现此方法的Stackoverflow中的大多数答案必须覆盖LocationCallback方法。最近的一个例子可以在这个问题中找到
该问题的代码片段如下:
mLocationCallback = new LocationCallback() {
@Override
public void onLocationResult(LocationResult locationResult) {
synchronized (SilentCurrentLocationProvider.this) {
super.onLocationResult(locationResult);
Location location = locationResult.getLastLocation();
}
};
编译器强制您重写的唯一时间是在抽象
实现的情况下。您看到的LocationCallBack
类不包含任何抽象成员。请注意它们如何具有{}
。这意味着它已经定义了“具体”实现。需要注意的另一点是,它们不是最终的,这意味着它们可以被重写,也可以根本不被重写,这解释了为什么编译器没有强迫您。
实际上,您正在创建一个匿名类,然后选择要覆盖的类。在本例中,您选择了onLocationResult()
方法。
mLocationCallback = new LocationCallback() { //Creating anonymous class to provide our own implementation for onLocationResult
@Override
public void onLocationResult(LocationResult locationResult) {
synchronized (SilentCurrentLocationProvider.this) {
super.onLocationResult(locationResult);
Location location = locationResult.getLastLocation();
}
};
从Selenium文档来看,WebDriver是一个接口,但在Eclipse中是包在项目浏览器中显示为一个类。此外,如果WebDriver是一个接口,则实现它的类(如ChromeDriver或InternetExplorerDriver)应该定义或。我们在哪里可以看到这些方法的方法定义?
问题内容: 假设我有实现它的接口和实现类,并且我想为此编写单元测试。我应该测试什么接口或Impl? 这是一个例子: 因此,我有实现它的HelloInterface和HelloInterfaceImpl。什么是被测单元接口或Impl? 我认为应该是HelloInterface。请考虑以下JUnit测试草图: 主线实际上是我注释掉的那条线。 方法不是我的公共接口的一部分,所以我不想 意外地 调用它。如
另请参见私有/受保护的方法是否应该在单元测试下? EDIT-2在多个实现\多个接口的情况下,我将测试所有的实现,但是当我在方法中声明变量时,我肯定会使用interface。
请帮助我了解什么是好的设计在这里,详细。
那代码在OOP方式下还是好的吗?还是我应该用接口?我认为直接通过方法是可以的。
问题内容: 抱歉,如果这个问题很愚蠢,但是我无法用Java语法来解决问题。. 我了解了C / C ++,我知道View是一个很好的类。.但是我不明白View.OnClickListener()是否是方法。 我怀疑它是否会返回对象? 我认为View是一个具有静态OnClickListener成员对象的类。同样,这对我来说没有意义。. 有人可以解释这段代码在做什么吗? 那么这段代码是怎么回事? 是对x