如何声明静态嵌套对象

时间:2017-12-21 08:34:19

标签: java oop

如何在java中声明嵌套的静态对象并访问它们。

这是我目前的工作代码。我试图将孩子声明为静态,但这给了我一个错误。 但在主要课程中,我无法得到孩子。无论如何要实现这个目标吗?

public class A {

    public static Parent parent= new Parent("abc") {
            public Child child1 = new Child("efg1");
            public Child child2 = new Child("efg2");
    }


    public static Parent parent1= new Parent("abc") {
            public Child child3 = new Child("efg1");
            public Child child4 = new Child("efg2");
    }

}

public class Main{

    public void run() {
        A.parent.child1; //this is not working , the android studio can only access parent.
        A.parent1.child3;
    }
}

2 个答案:

答案 0 :(得分:1)

你可以用下面的简单方式写一下:

public static void main(String[] args) {
    String argumentString = "";
    for(int i = 0; i < args.length(); i++) {
        argumentString += args[i] + " ";
    }
    argumentString = argumentString.trim();

    System.out.println("Got " + argumentString + " from the C++ program");
}

答案 1 :(得分:0)

假设Parent嵌套在A中,Child嵌套在Parent中,而ParentChild都是嵌套的静态类,您可以这样做:

public class A{
    public static class Parent {
       public Parent(String parentStr) {}

       public static class Child{
           public Child(String childStr) {}
       }
    }
}

public class Main{

    public void run() {
       A.Parent parent = new A.Parent("parent");
       A.Parent.Child child = new A.Parent.Child("child");
   }
}
相关问题