class OuterClass {
int x = 10;
class InnerClass {
int y = 5;
}
}
public class Main {
public static void main(String[] args) {
OuterClass myOuter = new OuterClass();
//OuterClass.InnerClass myInner = new OuterClass.InnerClass();
OuterClass.InnerClass myInner = myOuter.new InnerClass();
System.out.println(myInner.y + myOuter.x);
}
}
1. Can Outer class be static? --> No
2. Can inner class be static? --> Yes
3. Can you create an object from the inner class? --> Only if it's static
4. Can we have main method in inner class ? --> Only if it's static
5. Inner class can only be extended if it's static.
1. Can Outer class be static? --> No
2. Can inner class be static? --> Yes
3. Can you create an object from the inner class? --> Only if it's static
4. Can we have main method in inner class ? --> Only if it's static
5. Inner class can only be extended if it's static.
public OuterClass getOuter() {
return OuterClass.this;
}