java - 带有外部代码的方法 (Java)

标签 java methods

我目前正在开发 Java 图形 API,希望能够轻松进行自定义。我的部分想法是能够用自定义代码替换标准代码。为了实现这一点,我想知道我是否可以在外部可交换文件中使用我的代码引用代码的方法(这些文件可能会也可能不会用不同的语言编写,例如 RhinoScript)。例如,如果使用 API 的人觉得某个特定方法的代码效率低下,他们可以用他们认为更高效的代码替换该方法引用的文件。

我知道接口(interface)和抽象类可能是实现此目的的一种选择,但我觉得我描述的方法如果可行,将具有可重用代码的优势,使用不同的脚本语言更容易实现 API,并且通常更容易修改代码的方法。

我要问的底线是:是否有可能让一个方法执行包含在一个独立文件中的代码(仅包含该方法将执行的代码),该文件可能会也可能不会被写入与 Java 分开的语言,如果是这样,我将如何着手做这件事或者我应该为此研究哪些主题?

最后,如果这不是一个可以在这个论坛上提出的可接受的问题,或者我没有足够清楚地说明我的问题,我深表歉意。

最佳答案

我认为这不是要走的路,如果你想为你的库提供定制,接口(interface)和抽象类是你最好的选择。为其他语言实现包装器将非常低效,而且可能相对较慢,甚至不会从它添加到代码中的复杂性开始。你打算如何传递论点?接收返回值?在运行时或语法错误的情况下管理异常?

当然这一切都是可能的,但作为开发人员,我永远不会使用像您描述的那样工作的 API。

关于java - 带有外部代码的方法 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9552105/

相关文章:

Java - ArrayList 改变我的数据。为什么?

java - java选择文件夹的调用方法

java - 如何结合方法重载来为 Java 8 中的一个方法名称调用不同的参数类型?

java - 关闭浏览器后HttpSession发生变化

java - 如何使用@BeforeTest注释获取testng中的方法名称

java - foo 是什么意思?

java - 如何在另一种方法中使用一个方法返回的多个值

c++ - 定义的 `inline` 找不到用于特化的模板方法

c# - c#中这两个方法调用有什么区别?

java - ANTLR 4.7.1 生成的解析器中存在问题