gpt4 book ai didi

java - 如何编辑Java平台包(内置API)源代码?

转载 作者:行者123 更新时间:2023-12-01 15:19:55 25 4
gpt4 key购买 nike

尽管 Java API 很好,但我需要为我正在开发的项目更改默认 API 包(例如 java.util.Scanner)中的一些类的代码。

理想情况下,我会扩展我感兴趣的类并创建我自己的子类,但我想要扩展的类被声明为“final”。你建议我怎么做?如果我自定义这些包的源代码,编译器会遇到麻烦吗?

最佳答案

如果可以的话,您应该更愿意包装和委托(delegate),正如另一个答案中所建议的那样。请参阅Adapter Pattern .

但是如果您确实需要的话,当然有办法做到这一点。

一种简单的方法是简单地修改下载源中的代码并在类路径中替换您自己的 jar 版本。

另一种选择是使用面向方面的编程技术,可能是 AspectJ根据需要拦截和修改调用。

也可以使用反射和自行开发的类加载器来组合解决方案,但编码起来会很痛苦。

但是,如果您不知道自己在做什么,那么所有这些都是相当危险的。通常,类(class)被定为 final类是有充分理由的。

如果您更具体地告诉我们您希望更改什么,我们也许能够提供帮助,避免您当前认为需要更改的内容。

关于java - 如何编辑Java平台包(内置API)源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11081314/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com