" В допълнение към статичните методи има статични класове. Ще ги обсъдим по-подробно по-късно. Засега нека ви покажа само един пример:"

Пример:
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++;
         }
     }

}

" Можете да създадете толкова Cat обекти, колкото искате. Но това не е случаят със статична променлива. Съществува само едно копие на статична променлива."

„Основната цел на използването на статичния модификатор в декларацията на класа е да се контролира връзката между класовете Cat и StaticClassExample . Идеята е приблизително следната: класът Cat не е свързан с обекти StaticClassExample и няма достъп до екземпляра (не- статични) променливи на класа StaticClassExample."

„Така че мога да създавам класове вътре в класове?“

"Да. Java позволява това, но не се замисляйте твърде много точно сега. Ще стане по-ясно, когато ви обясня още някои неща в бъдеще."

— Надявам се, Риши.