1

例如,我将向 BufferedReader 类添加一些新方法。那可能吗?如果是这样,我将如何实现这一目标?
有什么建议么?

4

4 回答 4

1

您可以扩展 BufferedReader(例如)。这可能是“编辑”JDK 类的最便携和最推荐的方式。

于 2013-07-05T03:34:41.520 回答
1

如果您想向 BufferedReader 添加一个新方法,以便使用 BufferedReader 对象的每个人都可以使用它,那么在 Java 中没有简单的方法可以做到这一点。但是,您可以创建一个扩展 BufferedReader 的新类:

class MyNewTypeOfReader extends BufferedReader {
    public void myNewMethod() {
        //Code here...
    }
}

现在,每次创建 MyNewTypeOfReader 对象时,您都将拥有 BufferedReader 可用的所有方法,以及您的新方法。

于 2013-07-05T03:38:54.627 回答
0

我不建议你修改原生类,因为它们被 JVM 中运行的代码广泛使用,任何错误都可能导致严重问题。

您应该扩展这些类并覆盖现有方法,或创建新方法,以实现您想要的行为。

于 2013-07-05T03:43:57.550 回答
0

您可以,但如果您的更改被 Open JDK 之类的东西拒绝,您必须为此保留一个单独的 JDK 版本。

一个更好的选择是使用委托并创建您自己的具有必要功能的类。

于 2013-07-05T03:34:48.497 回答