" Além dos métodos estáticos, existem classes estáticas. Discutiremos isso com mais detalhes posteriormente. Por enquanto, deixe-me apenas mostrar um exemplo:"

Exemplo:
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++;
         }
     }

}

" Você pode criar quantos objetos Cat quiser. Mas esse não é o caso de uma variável estática. Existe apenas uma cópia de uma variável estática."

"O principal objetivo de usar o modificador estático na declaração de classe é controlar o relacionamento entre as classes Cat e StaticClassExample . A ideia é mais ou menos esta: a classe Cat não está vinculada a objetos StaticClassExample e não pode acessar a instância (não static) da classe StaticClassExample."

"Então posso criar classes dentro de classes?"

"Sim. Java permite isso, mas não pense muito nisso agora. Ficará mais claro quando eu explicar mais algumas coisas para você no futuro."

"Espero que sim, Rishi."