Я пытаюсь понять, как будет работать javax.inject, но, похоже, он работает не так, как ожидалось.
package demo333;
import javax.inject.Inject;
import javax.inject.Named;
public class Demo2452 {
@Inject private @Named("AA1") AA aa;
public static void main(String[] args) {
new Demo2452().m2();
}
private void m2() {
System.out.println(aa.hello());
}
}
interface AA{
String hello();
}
@Named("AA1")
class AA1 implements AA{
@Override
public String hello() {
return "helllllooooo";
}
}
Я получаю NullPointerException, как показано ниже: stacktrace:
Exceptionв теме "main" java.lang.NullPointerException на demo333.Demo2452.m2 (Demo2452.java:15) на demo333.Demo2452.main (Demo2452.java:11)
Может кто-нибудь сказать, пожалуйстачто пошло не так в коде выше?