1+ ### Aşağıdaki örnekte immutable olmayan IntValue sınıfı zincir çağırmaya uygun olarak yazılmıştır.
12``` java
23/* ----------------------------------------------------------------------------------------------------------------------
34 Tekrar: Aşağıdaki örnekte immutable olmayan IntValue sınıfı zincir çağırmaya uygun olarak yazılmıştır.
@@ -84,6 +85,7 @@ class IntValue {
8485 }
8586}
8687```
88+ ### Aşağıdaki örnekte alartDailog nesnesinin yaratılması onun içerisinde bulunan Builder isimli bir sınıf kullanılarak yapılmıştır.
8789``` java
8890/* ----------------------------------------------------------------------------------------------------------------------
8991 Aşağıdaki örnekte alartDailog nesnesinin yaratılması onun içerisinde bulunan Builder isimli bir sınıf kullanılarak
@@ -187,6 +189,7 @@ class AlertDialog {
187189 }
188190}
189191```
192+ ### enum içerisinde non-static sınıf bildirimi geçerlidir
190193``` java
191194/* ----------------------------------------------------------------------------------------------------------------------
192195 enum içerisinde non-static sınıf bildirimi geçerlidir
@@ -209,6 +212,7 @@ enum Sample {
209212 }
210213}
211214```
215+ ### enum içerisinde static sınıf bildirimi geçerlidir
212216``` java
213217/* ----------------------------------------------------------------------------------------------------------------------
214218 enum içerisinde static sınıf bildirimi geçerlidir
@@ -231,6 +235,7 @@ enum Sample {
231235 }
232236}
233237```
238+ ### Sınıf içerisine non-static enum bildirimi yapılabilir
234239``` java
235240/* ----------------------------------------------------------------------------------------------------------------------
236241 Sınıf içerisine non-static enum bildirimi yapılabilir
@@ -260,6 +265,7 @@ class Sample {
260265
261266}
262267```
268+ ### Sınıf içerisinde enum bildirimlerinin static veya non-static olmasının bir farklı yoktur.
263269``` java
264270/* ----------------------------------------------------------------------------------------------------------------------
265271 Sınıf içerisinde enum bildirimlerinin static veya non-static olmasının bir farklı yoktur. Çünkü
@@ -289,6 +295,7 @@ class Sample {
289295 }
290296}
291297```
298+ ### Aşağıdaki örnekte Figther sınıfına int türden yeni bir yetenek eklendiğinde sumOfAbilities ve averageOfAbilities metotları da değiştirilmek zorundadır.
292299``` java
293300/* ----------------------------------------------------------------------------------------------------------------------
294301 Aşağıdaki örnekte Figther sınıfına int türden yeni bir yetenek eklendiğinde sumOfAbilities ve averageOfAbilities
@@ -375,6 +382,7 @@ class Fighter {
375382 }
376383}
377384```
385+ ### Problem: Aşağıdaki sınıfa yeni bir yetenek eklendiğinde sumOfAbilities ve averageOfAbilities metotlarını değiştirmek zorunda kalmayacak şekilde sınıfı yeniden yazınız.
378386``` java
379387/* ----------------------------------------------------------------------------------------------------------------------
380388 Problem: Aşağıdaki sınıfa yeni bir yetenek eklendiğinde sumOfAbilities ve averageOfAbilities metotlarını
@@ -474,6 +482,7 @@ class Fighter {
474482 }
475483}
476484```
485+ ### Problem: Aşağıdaki sınıfa yeni bir yetenek eklendiğinde sumOfAbilities ve averageOfAbilities metotlarını değiştirmek zorunda kalmayacak şekilde sınıfı yeniden yazınız.
477486``` java
478487/* ----------------------------------------------------------------------------------------------------------------------
479488 Problem: Aşağıdaki sınıfa yeni bir yetenek eklendiğinde sumOfAbilities ve averageOfAbilities metotlarını
@@ -573,6 +582,7 @@ class Fighter {
573582 }
574583}
575584```
585+ ### Problem: Aşağıdaki sınıfa yeni bir yetenek eklendiğinde sumOfAbilities ve averageOfAbilities metotlarını değiştirmek zorunda kalmayacak şekilde sınıfı yeniden yazınız.
576586``` java
577587/* ----------------------------------------------------------------------------------------------------------------------
578588 Problem: Aşağıdaki sınıfa yeni bir yetenek eklendiğinde sumOfAbilities ve averageOfAbilities metotlarını
@@ -691,6 +701,7 @@ class Fighter {
691701 }
692702}
693703```
704+ ### Yerel sınıflar (local classes)
694705``` java
695706/* ----------------------------------------------------------------------------------------------------------------------
696707 Bir metot içerisinde bildirilen sınıflara yerel sınıflar (local classes) denir. Farklı metotlar içerisinde
@@ -752,6 +763,7 @@ class Sample {
752763 }
753764}
754765```
766+ ### Yerel sınıf isimleri faaliyet alanı bakımından yerel değişkenler ile aynıdır
755767``` java
756768/* ----------------------------------------------------------------------------------------------------------------------
757769 Yerel sınıf isimleri faaliyet alanı bakımından yerel değişkenler ile aynıdır
@@ -786,6 +798,7 @@ class Sample {
786798 }
787799}
788800```
801+ ### Aynı faaliyet alanı içerisinde aynı isimde yerel sınıf bildirimi geçersizdir
789802``` java
790803/* ----------------------------------------------------------------------------------------------------------------------
791804 Aynı faaliyet alanı içerisinde aynı isimde yerel sınıf bildirimi geçersizdir
@@ -824,6 +837,7 @@ class Sample {
824837 }
825838}
826839```
840+ ### Yerel sınıflar herhangi bir blok içerisinde bildirilebilir
827841``` java
828842/* ----------------------------------------------------------------------------------------------------------------------
829843 Yerel sınıflar herhangi bir blok içerisinde bildirilebilir
@@ -858,6 +872,7 @@ class Sample {
858872 }
859873}
860874```
875+ ### Yerel sınıfların erişim belirleyicisi olamaz
861876``` java
862877/* ----------------------------------------------------------------------------------------------------------------------
863878 Yerel sınıfların erişim belirleyicisi olamaz
@@ -892,6 +907,7 @@ class Sample {
892907 }
893908}
894909```
910+ ### Yerel sınıflar static olarak bildirilemez
895911``` java
896912/* ----------------------------------------------------------------------------------------------------------------------
897913 Yerel sınıflar static olarak bildirilemez
@@ -925,6 +941,7 @@ class Sample {
925941 }
926942}
927943```
944+ ### non-static, static ve yerel sınıflar başka bir sınıftan türetilebilir
928945``` java
929946/* ----------------------------------------------------------------------------------------------------------------------
930947 non-static, static ve yerel sınıflar başka bir sınıftan türetilebilir
@@ -960,6 +977,7 @@ class Sample {
960977 }
961978}
962979```
980+ ### erel bir sınıf başka bir yerel sınıftan türetilebilir. Şüphesiz taban sınıfın türemiş sınıfın bildirildiği yerde görülebilir olması gerekir
963981``` java
964982/* ----------------------------------------------------------------------------------------------------------------------
965983 Yerel bir sınıf başka bir yerel sınıftan türetilebilir. Şüphesiz taban sınıfın türemiş sınıfın bildirildiği
@@ -989,6 +1007,7 @@ class Sample {
9891007 }
9901008}
9911009```
1010+ ### Yerel bir sınıf içerisinde kendisinden önce bildirilen yerel değişkenler ve parametre değişkenleri kullanılabilir (capture)
9921011``` java
9931012/* ----------------------------------------------------------------------------------------------------------------------
9941013 Yerel bir sınıf içerisinde kendisinden önce bildirilen yerel değişkenler ve parametre değişkenleri kullanılabilir
@@ -1025,6 +1044,7 @@ class Sample {
10251044 }
10261045}
10271046```
1047+ ### Yerel bir sınıf içerisinde kendisinden önce bildirilen yerel değişkenler ve parametre değişkenleri kullanılabilir (capture)
10281048``` java
10291049/* ----------------------------------------------------------------------------------------------------------------------
10301050 Yerel bir sınıf içerisinde kendisinden önce bildirilen yerel değişkenler ve parametre değişkenleri kullanılabilir
@@ -1073,8 +1093,8 @@ class Sample {
10731093 }
10741094}
10751095```
1096+ ### yerel ya da parametre değişkeni ya yakalandığında değiştirilemez, ya da değiştirilse yakalanamaz
10761097``` java
1077-
10781098/* ----------------------------------------------------------------------------------------------------------------------
10791099 Yerel sınıflar içerisinde yakalanan yerel veya parametre değişkenleri faaliyet alanı içerisinde tek bir değer
10801100 alabilirler. Yani yakalanmış değişkenlerin değerleri faaliyet alanları içerisinde hiçbiryerde değiştirilemez.
@@ -1123,6 +1143,7 @@ class Sample {
11231143 }
11241144}
11251145```
1146+ ### Yerel sınıflar içerisinde (anonim sınıflar ve lambda ifadelerinde de) sınıf veri elemanları yakalanablir ve değiştirilebilir!
11261147``` java
11271148/* ----------------------------------------------------------------------------------------------------------------------
11281149 Yerel sınıflar içerisinde (anonim sınıflar ve lambda ifadelerinde de) sınıf veri elemanları yakalanablir ve
@@ -1163,6 +1184,7 @@ class Sample {
11631184 }
11641185}
11651186```
1187+ ### Yerel sınıflar içerisinde (anonim sınıflar ve lambda ifadelerinde de) sınıf veri elemanları yakalanablir ve değiştirilebilir
11661188``` java
11671189/* ----------------------------------------------------------------------------------------------------------------------
11681190 Yerel sınıflar içerisinde (anonim sınıflar ve lambda ifadelerinde de) sınıf veri elemanları yakalanablir ve
@@ -1205,6 +1227,7 @@ class Sample {
12051227 }
12061228}
12071229```
1230+ ### Yerel sınıflar aşağıdaki gibi basit testlerde kullanılabilir.
12081231``` java
12091232/* ----------------------------------------------------------------------------------------------------------------------
12101233 Yerel sınıflar aşağıdaki gibi basit testlerde kullanılabilir. Şüphesiz aşağıdaki testi daha iyi yapabilecek araçlar
@@ -1270,6 +1293,7 @@ class Sample {
12701293 }
12711294}
12721295```
1296+ ### Yerel sınıflar aşağıdaki gibi basit testlerde kullanılabilir.
12731297``` java
12741298/* ----------------------------------------------------------------------------------------------------------------------
12751299 Yerel sınıflar aşağıdaki gibi basit testlerde kullanılabilir. Şüphesiz aşağıdaki testi daha iyi yapabilecek araçlar
0 commit comments