这是设计问题还是 Eclipse 问题还是 Java 漏洞?

发布于 2024-11-26 16:46:03 字数 530 浏览 0 评论 0原文

让我们在 Eclipse 的工作空间中定义以下类:

public abstract class A {
   public void foo() {
      System.out.println("Hi.. this is foo()");
   }
}

public interface I {
   void foo();
}

public class B extends A implements I {
   public void bark() {
      System.out.println("Hi.. this is bark()");
   }
}

public class C {
   public void woo() {
      I i = new B();
      i.foo();
   }
}

现在的问题是 Eclipse 在搜索引用时没有显示 A.foo() 的任何引用

  • ->项目或
  • 参考 - 层次结构

我认为这是一个设计问题。你怎么认为?

Let us have the following classes defined in eclipse's work space:

public abstract class A {
   public void foo() {
      System.out.println("Hi.. this is foo()");
   }
}

public interface I {
   void foo();
}

public class B extends A implements I {
   public void bark() {
      System.out.println("Hi.. this is bark()");
   }
}

public class C {
   public void woo() {
      I i = new B();
      i.foo();
   }
}

Now the problem is eclipse doesn't show any references for A.foo() on searching through

  • References -> Project or
  • References - Hierarchy

I see this a design issue. What do you think?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夏末的微笑 2024-12-03 16:46:03

对我来说听起来完全合理,因为在您提供的代码 A 中,没有实现 I,只有 B 实现。尽管在 B 代码声明中的事件读出 extends A Implements I,但这并不意味着 A 会追溯实现接口 I - 它说“B扩展了A并且还实现了I”。

Sounds perfectly reasonable to me as in your provided code A does not implement I, only B does. Event though in declaration of B code reads out extends A implements I it does not mean A would retrospectively be implementing interface I - it says "B extends A and also implements I".

心碎的声音 2024-12-03 16:46:03

在 Eclipse 中为我工作:

A a = new A() { };
a.foo(); // <-- A.foo() found this reference by Eclipse in "References -> Project"

Works for me in Eclipse:

A a = new A() { };
a.foo(); // <-- A.foo() found this reference by Eclipse in "References -> Project"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文