Static inner classes:
- We access static members using class name.
- Defining a class with static keyword is called Static inner class.
- We access static inner class using outer class name.
class Outer
{
static void m1()
{
System.out.println("Outer class m1()...");
}
static class Inner
{
static void m2()
{
System.out.println("Inner class m2()...");
}
}
}
class Access
{
public static void main(String[] args)
{
Outer.m1();
Outer.Inner.m2();
}
}
Creating object of static inner class:
- We can access non static members using object reference.
- We can instantiate static inner class directly with outer class name.
{
static class Inner
{
void fun()
{
System.out.println("static class non static fun..");
}
}
}
class Access
{
public static void main(String args[])
{
Outer.Inner obj = new Outer.Inner();
obj.fun();
}
}