有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

SpringJava第二次继承返回空值

我有三门课:

 public abstract class Provider{
   @Autowired
   private ModelService modelService;

   protected void foo(String name) throws Exception {
       modelService.doSomething();   //line 10
   }
 }


 @Service
 public class MyProvider extends Provider {
       // calling foo on the parent
       foo("mayName");
 }

 public class MyOAuthProvider extends MyProvider {
       // calling foo on the parent-->parrent
       foo("mayName");
 }
  • 当我从MyProvider调用foo时,函数将工作

  • 当我从MyOAuthProvider调用foo时,函数在NullPointerException上失败,因为modelService为null

跟踪:

Exception in thread "main" java.lang.NullPointerException
    at my.Provider.foo(Provider.java:10)
    at my.Nain.main(Nain.java:7)

任何人都可以帮助我理解为什么会发生这种情况,以及我如何解决我的问题


共 (1) 个答案

  1. # 1 楼答案

    用@service注释MyOAuthProvider将解决您的问题