如何使用Java在内部类中调用方法?

时间:2018-09-07 09:37:49

标签: java

您可以在内部类中调用方法而不在类A中调用构造函数吗?

public class A {

    public A() {
        System.out.println("You are in Class A");
    }

    public class innerA {

        public innerA() {
            System.out.println("You Are in Class InnerA");
        }

        public void PrintName() {
            System.out.println("Jack in InnerA");
        }
    }
}

public class B {
    A.innerA obj = new A().new innerA();
}

2 个答案:

答案 0 :(得分:4)

好吧,您需要一个InnerA实例来在其上实际调用一个方法,在这种情况下您不能这样做,因为您需要为此的A实例。

您可以将声明更改为:

static public class InnerA {...}

因此不需要A的实例,只需要InnerA的实例

答案 1 :(得分:0)

    class Car { 
       void carMethod() { 

          System.out.println("inside carMethod"); 
          class TataCar { 
             void tataCarMethod() { 
                System.out.println("inside tataCarMethod"); 
             } 
          } 
          TataCar y = new TataCar(); 
          y.tataCarMethod(); 
       } 
    } 
    class MainClass { 
       public static void main(String[] args) { 
          Car carObj=new Car(); 
          carObj.carMethod(); 
       } 
    }


    Output:
    inside carMethod
    inside tataCarMethod