是否可以使用 guice - java 在 java 接口中注入依赖项

Is it possible to inject dependency inside java interface using guice - java

我正在尝试在我的界面中注入依赖关系

public interface TestInject {

   @Inject
   Mydependency dependencyToCall;

    default void processInput(String inputToCheck) {
        //some lines of code
        dependencyToCall.process(inputToCheck)
    } // If i dont do this then all implementation has to implement same code. 

  void handleError()//will be overwritten by implementation class

}

以上代码抛出错误variable dependencyToCall might not be initialized

是否可以注入内部接口?

或者我是否必须引入抽象class来解决冗余代码问题

我觉得不行。查看关于Java接口的官方文档,here:

一个接口声明引入了一个新的引用类型,其成员是classes、接口、常量和方法。 该类型没有实例变量,通常会声明一个或多个抽象方法;否则不相关的 classes 可以通过为其抽象方法提供实现来实现接口。接口可能无法直接实例化。

我猜你应该改为使用摘要 class