Van icon

JAVA INNER CLASSES

Links


    //INNER CLASES
    /*
    * INNER CLASES
    * In Java, it is also possible to nest classes (a class within a class). 
    * The purpose of nested classes is to group classes that belong together, 
    * which makes your code more readable and maintainable.
    */

    public class InnerClasses {

        public InnerClasses() {
            OuterClass myOuter = new OuterClass();
            OuterClass.InnerClass myInner = myOuter.new InnerClass();
            System.out.println(myInner.y + myOuter.x);
        }

    }

    //CLASS WITH INNER CLASS
    class OuterClass {
        int x = 10;

        class InnerClass {
            int y = 5;
        }
    }

    //PRIVATE OR PROTECTED INNER CLASSES
    class OuterClass2 {
    int x = 10;

    private class PrivateInnerClass {
        int y = 5;
    }
    
    protected class ProtectedInnerClass {
        int y = 5;
    }
    }