我有两个类,Main和SPBHomeHelp。这是Main的代码:

public class Main{

      SPBHomeHelp homeHelp;

      public Main(){

            homeHelp = new SPBHomeHelp();

            Home home = new Home();

      }

 }


这是SPBHomeHelp的代码:

public class SPBHomeHelp{

      public SPBHomeHelp(){

      }

      public class Home{

            public Home(){

                  System.out.println("Entered Home Constructor");

            }

      }

}


Main和SPBHomeHelp是两个不同的.java文件。我可以轻松地声明和实例化SPBHomeHelp的实例。但是我也想在Main中也有一个Home实例,它是嵌套在SPBHomeHelp内的类。我试过了:

Home home = new Home();


因为Home是公众的,但这是行不通的。如何在Main中创建Home实例?

最佳答案

home是内部类Home类型的实例(来自类SPBHomeHelp)。您需要该类的实例(即homeHelp)以构造Home实例。我认为您正在寻找类似的东西

SPBHomeHelp.Home home = homeHelp.new Home();

关于java - 如何从该.java文件(Java)外部实例化嵌套在类内部的类?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29812739/

10-08 23:29