Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何访问静态嵌套类中的私有类_Java_Nested - Fatal编程技术网

Java 如何访问静态嵌套类中的私有类

Java 如何访问静态嵌套类中的私有类,java,nested,Java,Nested,这里我如何从main()方法访问私有类。我可以初始化静态类对象,然后如何初始化私有类?只需访问它即可。另外,您有一个静态的内部类,然后是一个非静态的内部类。除非您完全理解java,否则您不希望拥有非静态的内部类,显然,到目前为止,您还不希望。所以,这是目前的禁区 class Sample{ static class Inner{ private class Private{ private void print(){

这里我如何从main()方法访问私有类。我可以初始化静态类对象,然后如何初始化私有类?

只需访问它即可。另外,您有一个静态的内部类,然后是一个非静态的内部类。除非您完全理解java,否则您不希望拥有非静态的内部类,显然,到目前为止,您还不希望。所以,这是目前的禁区

class Sample{
       static class Inner{
          private class Private{
              private void print(){
                 System.out.println("accessed");
              }
          }
       }
      public static void main(String[] args){
        #access the print() method from here
}}
或者如果你真的必须:

class Sample{
       static class Inner {
          private static class Private {
              private void print() {
                 System.out.println("accessed");
              }
          }
       }

      public static void main(String[] args){
          Inner.Private pr = new Inner.Private();
          pr.print();
      }
}
i.new


嗯。这就是语法。我告诉过你,你不想这样做是有原因的。

你为什么要使用内部类?是的,第二个块代码对我很有用。最初在为静态类创建对象引用时有点混乱。现在我很清楚了。谢谢你,伙计。
class Sample{
       static class Inner {
          private class Private {
              private void print() {
                 System.out.println("accessed");
              }
          }
       }

      public static void main(String[] args){
          Inner i = new Inner();
          Inner.Private pr = i.new Private();
          pr.print();
      }
}