2016-01-20 165 views
5

匕首2靜態注射的任何示例。我已經嘗試過這樣的: -匕首2靜態注射

class A{ 
@Inject 
static B b; 

static { 
    getAppInstance().getComponent().inject(A.class); 
} 

static anyMethod(){ 
    b.anotherMethod(); 
} 
} 

public interface AppComponent{ 
void inject(Class<A> aClass); 
} 
+0

爲什麼你需要它是靜態的?單身人士提供者應該達到你所需要的。 – davehenry

+0

@davehenry您可能希望它是靜態的,因此可以使用靜態方法。 –

回答

1

所以這是我提出的答案: -

class A{ 
private static B b = getAppInstance.getComponent().getB(); 

static anyMethod(){ 
    b.anotherMethod(); 
} 
} 

public interface AppComponent{ 
B getB(); 
}