为什么我应该在没有代码时调用超级

为什么我应该在没有代码时调用超级

问题描述:

当我看着AppCompatActivity.java来研究API 我发现onSupportActionModeStarted()需要重写方法来调用super.method(),即使没有代码。你有什么线索吗?为什么我应该在没有代码时调用超级

/** 
* Notifies the Activity that a support action mode has been started. 
* Activity subclasses overriding this method should call the superclass implementation. 
* 
* @param mode The new action mode. 
*/ 
@Override 
@CallSuper 
public void onSupportActionModeStarted(@NonNull ActionMode mode) { 
} 

今天,没有什么onSupportActionModeStarted()AppCompatActivity。通过添加@CallSuper,谷歌说“将来我们可能会在这里放置代码,所以请通过超类实现,以便您的应用程序在未来不会中断”。

+0

在子类中实现AppCompatCallback清除了类的意图,很容易看出重写的方法属于哪里,所以我想知道为什么AppCompatActivity实现它。根据受访者的意见,您可能认为开发人员可能会在下一个平台上使用AppCompatCallback,因此不需要复杂的工作。但这也会影响班级的清晰度。最后,业务的连续性比代码的清晰度更重要。 –