java - Android @Override 用法

标签 java android overriding

(Java 新手,老 C# 家伙。)

我注意到在 Android 示例代码中大量使用了 @Override。我以为所有 Java 方法默认都是“虚拟的”?

那么 @Override 做了什么?

例子:

private class HelloWebViewClient extends WebViewClient {

    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        return true;
    }
}

最佳答案

这是一个注解,您可以使用它来告诉编译器和您的 IDE,您打算将具有该注解的方法作为父类(super class)方法的覆盖。如果您犯了错误,它们会发出警告/错误,例如,如果您打算覆盖一个方法但拼写错误,如果注释存在,IDE 或编译器会告诉您它实际上是 not覆盖父类(super class)方法,因此您可以确定原因并纠正拼写错误。

这对于 Android 应用程序和 Activity 而言尤为重要,例如,所有调用都将基于 Activity 生命周期 - 如果您没有正确覆盖生命周期方法,它们将永远不会被框架调用。一切都可以正常编译,但您的应用程序将无法按您预期的方式运行。添加注解会报错。

关于java - Android @Override 用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2950074/

相关文章:

java - 在密码重置时使用 ldaptive 强制执行 Active Directory 密码历史记录策略

java - NamedParameterJdbcTemplate 批量大小

android - 找到项目中缺失的onError

java - 覆盖等于检查类类型或原始 int

c# - 如何在 UserControl 中使用抽象类

Java:if语句可以简化(box contains point)

java - APACHE POI autoSizeColumn 与 useMergedCells 太慢

java - Android AutocompleteFilter 的多个国家

android - 基于动态类型获取 Realm 数据

c# - 再次加载 Form1 的可视化 C# 代码