" Statik metotlara ek olarak statik sınıflar da vardır. Bunlara ileride daha detaylı değineceğiz. Şimdilik size bir örnek göstereyim:"

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

}

" İstediğiniz kadar Cat nesnesi oluşturabilirsiniz. Ancak statik değişkende durum böyle değildir. Statik değişkenin yalnızca bir kopyası vardır."

"Sınıf bildiriminde statik değiştiriciyi kullanmanın temel amacı, Cat ve StaticClassExample sınıfları arasındaki ilişkiyi kontrol etmektir . Fikir kabaca şöyledir: Cat sınıfı, StaticClassExample nesnelerine bağlı değildir ve örneğe erişemez (olmayan) static) StaticClassExample sınıfının değişkenleri."

"Yani sınıfların içinde sınıflar oluşturabilirim?"

"Evet. Java buna izin veriyor, ama şimdi fazla düşünme. İleride sana başka şeyler açıkladığımda her şey daha netleşecek."

"Umarım Rishi."