java - 在 JRuby 中使用的 Java 对象上使用(自定义)getId 方法有什么问题吗?

标签 java jruby

我非常喜欢简洁的方法名称,因此当我们的代码库具有以下内容时:

Account.getAccountId();

我喜欢添加一个别名,这样我就可以这样做:

Account.getId();

但是,我听到...公司其他地方的人提示这可能会产生问题,因为我定义的 getId 会干扰所有 Java 对象都具有的内置 getId 或类似的东西。此外,我们使用 JRuby 来引用旧的 Java 类,因此该问题也可能与内置的 Ruby getId 方法有关。

不过,我并不完全相信存在问题(而且我真的很喜欢我的简短方法名称)。那么,有谁知道定义 getId 方法(在 Java 或 JRuby 中)是否存在问题,如果有,问题是什么以及可以解决吗?

编辑:从迄今为止的响应(以及我对 Java 的了解)看来,问题不可能出在某些核心 Java getId 功能上(因为没有)。所以这个问题实际上是针对 JRuby 人员的;如果 getId“冲突”来自任何地方,那么它一定来自 JRuby 的东西。

最佳答案

However, I've heard ... murmurs from elsewhere in my company about how this might be problematic, because the getId I define will interfere with a built-in getId that all Java objects have, or something like that.

java.lang.Object是类层次结构的根。每个类都有 Object 作为父类(super class)。所有对象(包括数组)都实现此类的方法。

但是Object没有任何getId方法。所有 Java 对象也是如此。

关于java - 在 JRuby 中使用的 Java 对象上使用(自定义)getId 方法有什么问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1604351/

相关文章:

java - LWJGL - 调用了当前上下文中不可用的函数

java - SpringMVC+Hibernate :criteria. list() 返回空

c# - Android套接字仅在本地网络中工作

java - 无论如何,是否可以通过任何api获取java中solr conf文件夹的位置。

ruby-on-rails - 像 BetterErrors for JRuby 这样的工具?

java - 重新加载持久化实体

ruby-on-rails - 莺:我的影像在哪里

java - JRuby GUI 窗口

java - 在 jruby on Rails 中哪里设置 java 选项?

java - 使用 JRuby 连接到 MS SQL Server