Pe lângă metodele statice, există clase statice. Vom discuta despre acestea mai detaliat mai târziu. Deocamdată, permiteți-mi să vă arăt un exemplu:”

Exemplu:
public class StaticClassExample
{
    private static int catCount = 0;

    public static void main(String[] args) throws Exception
    {
        Cat bella = new Cat("Bella");
        Cat tiger = new Cat("Tiger");

        System.out.println("Cat count " + catCount);
    }

     public static class Cat
    {
        private String name;

        public Cat(String name)
         {
            this.name = name;
            StaticClassExample.catCount++;
         }
     }

}

Puteți crea câte obiecte Cat doriți. Dar nu este cazul unei variabile statice. Există o singură copie a unei variabile statice.”

„Scopul principal al folosirii modificatorului static în declarația clasei este de a controla relația dintre clasele Cat și StaticClassExample . Ideea este aproximativ următoarea: clasa Cat nu este legată de obiectele StaticClassExample și nu poate accesa instanța (non- static) variabilele clasei StaticClassExample."

„Deci pot crea clase în cadrul claselor?”

"Da. Java permite asta, dar nu te gândi prea mult acum. Va deveni mai clar când îți voi mai explica câteva lucruri în viitor."

— Sper că da, Rishi.