gpt4 book ai didi

java - 在接口(interface)的所有实现上调用基函数

转载 作者:行者123 更新时间:2023-11-30 06:36:33 24 4
gpt4 key购买 nike

在接口(interface)的所有实现上调用基函数的最佳方法是什么,并且可以反射和减少行数?

public interface BaseClass { public void doSomething();}

public class A implements BaseClass {
@Override
public void doSomething () {
System.out.println("doing Something in A");
}
}

public class B implements BaseClass {
@Override
public void doSomething () {
System.out.println("doing Something in B");
}
}

public class anotherClass {
public static void main(final String[] args) {
// get all the implementations of BaseClass;
// for each implementation call doSomething();
}
}

最佳答案

复杂:

  • 扫描所有类的完整类路径
  • 对于每个类(除了 JVM 附带的类):检查该类是否扩展了您的基类
    • 如果是这样 - 看看是否可以实例化该类的对象来调用该函数

然后意识到这在现实世界中没有意义,并决定以不同的方式解决根本问题。

关于java - 在接口(interface)的所有实现上调用基函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45135756/

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