片段内的非法封闭实例

The*_*ter 2 java android class

我有这个代码:

MainFragmentActivity a = new MainFragmentActivity();
MainFragmentActivity.MasterFrag mm = a.new MasterFrag(); // a.new
MainFragmentActivity.MasterFrag.MasterTask e = mm.new MasterTask();
e.execute();
Run Code Online (Sandbox Code Playgroud)

a.new上面引用的线路上,它有一个问题a。它说:

Illegal enclosing instance specification for type MainFragmentActivity.MasterFrag
Run Code Online (Sandbox Code Playgroud)

该代码块位于Fragment.a 内的 a (非静态)内的静态方法内FragmentActivity。我不知道如何声明这个a变量?将此static调用也不是一个选项...我怎样才能获得对该MainFragmentActivity实例的引用?

小智 6

我相信如果内部类 MasterFrag 声明为静态,您会收到此编译错误。实例化它的正确方法是:

MainFragmentActivity.MasterFrag mm = new MainFragmentActivity.MasterFrag();
Run Code Online (Sandbox Code Playgroud)