Skip to content

Commit 1f660d9

Browse files
Update java019.md
1 parent 8ff1da2 commit 1f660d9

File tree

1 file changed

+45
-2
lines changed

1 file changed

+45
-2
lines changed

JavaLesson019/java019.md

+45-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
### Nitelikli ve niteliksiz genel isim arama kurallarına göre bir isim ilgili sınıfta bulunamazsa taban sınıflara da bakılır.
12
```java
23
/*----------------------------------------------------------------------------------------------------------------------
34
19.09.2020
@@ -32,6 +33,7 @@ class A {
3233
}
3334
}
3435
```
36+
### sınıfın protected bölümü aynı paketteki diğer sınıflar için public'dir
3537
```java
3638
/*----------------------------------------------------------------------------------------------------------------------
3739
Hatırlanacağı gibi sınıfın protected bölümü aynı paketteki diğer sınıflar için public'dir
@@ -69,6 +71,7 @@ class A {
6971
}
7072
}
7173
```
74+
### sınıf içerisinde sınıfın her bölümüne erişilebilir
7275
```java
7376
/*----------------------------------------------------------------------------------------------------------------------
7477
Hatırlanacağı gibi sınıf içerisinde sınıfın her bölümüne erişilebilir
@@ -102,6 +105,7 @@ class A {
102105
}
103106
}
104107
```
108+
### protected bölüme türemiş sınıflar aşağıdaki gibi erişemez
105109
```java
106110
/*----------------------------------------------------------------------------------------------------------------------
107111
protected bölüme türemiş sınıflar aşağıdaki gibi erişemez
@@ -136,6 +140,7 @@ public class A {
136140
}
137141
}
138142
```
143+
### Türemiş sınıf içerisinde kendisine ait olan taban sınıf bölümünün protected elemanlarına erişilebilir.
139144
```java
140145
/*----------------------------------------------------------------------------------------------------------------------
141146
Türemiş sınıf içerisinde kendisine ait olan taban sınıf bölümünün protected elemanlarına erişilebilir. Yani türemiş
@@ -174,6 +179,7 @@ public class A {
174179
}
175180
}
176181
```
182+
### AnalyticalCircle sınıfı ve test kodu (1)
177183
```java
178184
/*----------------------------------------------------------------------------------------------------------------------
179185
AnalyticalCircle sınıfı ve test kodu
@@ -194,6 +200,7 @@ class App {
194200
}
195201
}
196202
```
203+
### AnalyticalCircle sınıfı ve test kodu (2)
197204
```java
198205
/*----------------------------------------------------------------------------------------------------------------------
199206
AnalyticalCircle sınıfı ve test kodu
@@ -214,6 +221,7 @@ class App {
214221
}
215222
}
216223
```
224+
### AnalyticalCircle sınıfı ve test kodu (3)
217225
```java
218226
/*----------------------------------------------------------------------------------------------------------------------
219227
AnalyticalCircle sınıfı ve test kodu
@@ -234,6 +242,7 @@ class App {
234242
}
235243
}
236244
```
245+
### AnalyticalCircle sınıfı ve test kodu (4)
237246
```java
238247
/*----------------------------------------------------------------------------------------------------------------------
239248
AnalyticalCircle sınıfı ve test kodu
@@ -254,6 +263,7 @@ class App {
254263
}
255264
}
256265
```
266+
### AnalyticalCircle sınıfı ve test kodu (5)
257267
```java
258268
/*----------------------------------------------------------------------------------------------------------------------
259269
AnalyticalCircle sınıfı ve test kodu
@@ -290,6 +300,7 @@ class App {
290300
}
291301

292302
```
303+
### AnalyticalCircle sınıfı ve test kodu (6)
293304
```java
294305
/*----------------------------------------------------------------------------------------------------------------------
295306
AnalyticalCircle sınıfı ve test kodu
@@ -318,7 +329,8 @@ class App {
318329
System.out.printf("{x:%d, y:%d}%n", analyticalCircle.getX(), analyticalCircle.getY());
319330
}
320331
}
321-
```
332+
```
333+
### AnalyticalCircle sınıfı ve test kodu (7)
322334
```java
323335
/*----------------------------------------------------------------------------------------------------------------------
324336
AnalyticalCircle sınıfı ve test kodu:
@@ -348,6 +360,7 @@ class App {
348360
}
349361
}
350362
```
363+
### AnalyticalCircle sınıfı ve test kodu (8)
351364
```java
352365
/*----------------------------------------------------------------------------------------------------------------------
353366
AnalyticalCircle sınıfı ve test kodu
@@ -366,6 +379,7 @@ class App {
366379
}
367380
}
368381
```
382+
### Circle sınıfı
369383
```java
370384
/*----------------------------------------------------------------------------------------------------------------------
371385
Circle sınıfı
@@ -459,6 +473,7 @@ public class AnalyticalCircle extends Circle {
459473
}
460474
}
461475
```
476+
### Point sınıfı
462477
```java
463478
/*----------------------------------------------------------------------------------------------------------------------
464479
Point sınıfı
@@ -519,6 +534,7 @@ public class Point {
519534
}
520535
}
521536
```
537+
### Time sınıfı ve test kodu
522538
```java
523539
/*----------------------------------------------------------------------------------------------------------------------
524540
Time sınıfı ve test kodu
@@ -538,6 +554,7 @@ class App {
538554
}
539555
}
540556
```
557+
### Time sınıfı
541558
```java
542559
/*----------------------------------------------------------------------------------------------------------------------
543560
Time sınıfı
@@ -731,6 +748,7 @@ public class Time {
731748
}
732749
}
733750
```
751+
### Date sınıfı ve test kodu
734752
```java
735753
/*----------------------------------------------------------------------------------------------------------------------
736754
Date sınıfı ve test kodu
@@ -752,6 +770,7 @@ class App {
752770
}
753771
}
754772
```
773+
### Date sınıfı
755774
```java
756775
/*----------------------------------------------------------------------------------------------------------------------
757776
Date sınıfı
@@ -1039,6 +1058,7 @@ public class Date {
10391058
}
10401059

10411060
```
1061+
### Aralarında türetme ilişkisi olmayan iki sınıf türünden referans birbirine tür dönüştürme operatörü kullanılarak bile atanamaz
10421062
```java
10431063
/*----------------------------------------------------------------------------------------------------------------------
10441064
Aralarında türetme ilişkisi olmayan iki sınıf türünden referans birbirine tür dönüştürme operatörü kullanılarak
@@ -1065,8 +1085,8 @@ class A {
10651085

10661086
}
10671087
```
1088+
### yukarıya doğru dönüşüm (upcasting)
10681089
```java
1069-
10701090
/*----------------------------------------------------------------------------------------------------------------------
10711091
Türemiş sınıf türünden bir referans taban sınıf türünden bir referansa doğrudan (implicit) atanabilir. Buna
10721092
yukarıya doğru dönüşüm (upcasting) denir
@@ -1092,6 +1112,7 @@ class A {
10921112

10931113
}
10941114
```
1115+
### Yukarıya doğru dönüşümde taban sınıf referansına türemiş sınıf referansına ilişkin nesnenin taban sınıf bölümünün adresi atanır.
10951116
```java
10961117
/*----------------------------------------------------------------------------------------------------------------------
10971118
Yukarıya doğru dönüşümde taban sınıf referansına türemiş sınıf referansına ilişkin nesnenin taban sınıf bölümünün
@@ -1126,6 +1147,7 @@ class A {
11261147
//...
11271148
}
11281149
```
1150+
### Aşağıdaki örnekte doWork metodu yalnızca A sınıfına bağımlı (dependency) olarak yazılmıştır.
11291151
```java
11301152
/*----------------------------------------------------------------------------------------------------------------------
11311153
Aşağıdaki örnekte doWork metodu yalnızca A sınıfına bağımlı (dependency) olarak yazılmıştır. Bu metot A sınıfından
@@ -1180,6 +1202,7 @@ class A {
11801202
//...
11811203
}
11821204
```
1205+
### CompanyApp uygulaması
11831206
```java
11841207
/*----------------------------------------------------------------------------------------------------------------------
11851208
20.09.2020
@@ -1369,6 +1392,7 @@ public class SalesManager extends Manager {
13691392
}
13701393
}
13711394
```
1395+
### Static ve Dinamik referans türleri
13721396
```java
13731397
/*----------------------------------------------------------------------------------------------------------------------
13741398
Bir referansın iki tane türü vardır: statik, dinamik
@@ -1408,6 +1432,7 @@ class A {
14081432

14091433
}
14101434
```
1435+
### Aşağıdaki örnekte x'in dinamik türünün değişimi gösterilmiştir
14111436
```java
14121437
/*----------------------------------------------------------------------------------------------------------------------
14131438
Aşağıdaki örnekte x'in dinamik türünün değişimi gösterilmiştir
@@ -1439,6 +1464,7 @@ class A {
14391464

14401465
}
14411466
```
1467+
### Aşağıdaki örnekte x'in dinamik türünün değişimi gösterilmiştir
14421468
```java
14431469
/*----------------------------------------------------------------------------------------------------------------------
14441470
Aşağıdaki örnekte x'in dinamik türünün değişimi gösterilmiştir
@@ -1479,6 +1505,7 @@ class A {
14791505

14801506
}
14811507
```
1508+
### Aşağıdaki örnekte z'nin dinamik türü C olmuştur
14821509
```java
14831510
/*----------------------------------------------------------------------------------------------------------------------
14841511
Aşağıdaki örnekte z'nin dinamik türü C olmuştur
@@ -1511,6 +1538,7 @@ class A {
15111538

15121539
}
15131540
```
1541+
### ir dizi referansının dinamik türü JNI (Java Native Interface) tür ismi olarak yazdırılır.
15141542
```java
15151543
/*----------------------------------------------------------------------------------------------------------------------
15161544
Anahtar Notlar: Bir dizi referansının dinamik türü JNI (Java Native Interface) tür ismi olarak
@@ -1529,6 +1557,7 @@ class App {
15291557
}
15301558
}
15311559
```
1560+
### Aşağıya doğru dönüşüm(downcasting), haklı ve haksız dönüşüm kavramları
15321561
```java
15331562
/*----------------------------------------------------------------------------------------------------------------------
15341563
Taban sınıf türünden bir referans türemiş sınıf türünden bir referansa doğrudan atanamaz. Bu işlem
@@ -1571,6 +1600,7 @@ class A {
15711600
public int a;
15721601
}
15731602
```
1603+
### downcasting işlemi
15741604
```java
15751605
/*----------------------------------------------------------------------------------------------------------------------
15761606
downcasting işlemi
@@ -1616,6 +1646,7 @@ class A {
16161646
}
16171647

16181648
```
1649+
### Object sınıfı her sınıfın doğrudan ya da dolaylı olarak taban sınıfı olduğundan her türden referans Object referansına atanabilir.
16191650
```java
16201651
/*----------------------------------------------------------------------------------------------------------------------
16211652
Object sınıfı her sınıfın doğrudan ya da dolaylı olarak taban sınıfı olduğundan her türden referans
@@ -1653,6 +1684,7 @@ class App {
16531684
}
16541685
}
16551686
```
1687+
### Aşağdaki örnekte Object dizisinin referanslarının dinamik türüne göre downcasting yapılmıştır.
16561688
```java
16571689
/*----------------------------------------------------------------------------------------------------------------------
16581690
Aşağdaki örnekte Object dizisinin referanslarının dinamik türüne göre downcasting yapılmıştır.
@@ -1724,6 +1756,7 @@ public class RandomObjectArrayGeneratorApp {
17241756
}
17251757

17261758
```
1759+
### Aşağdaki örnekte programcının tür ismini yanlış yazma olasılığı neredeyse kalmasa da hala yazı karşılaştırması yapılmaktadır
17271760
```java
17281761
/*----------------------------------------------------------------------------------------------------------------------
17291762
Aşağdaki örnekte programcının tür ismini yanlış yazma olasılığı neredeyse kalmasa da hala yazı karşılaştırması
@@ -1805,6 +1838,7 @@ public class TypeInfo {
18051838
public static final String INT_ARRAY = "[I";
18061839
}
18071840
```
1841+
### instanceof operatörü iki operandlı (binary), araek (infix) bir operatördür.
18081842
```java
18091843
/*----------------------------------------------------------------------------------------------------------------------
18101844
instanceof operatörü iki operandlı (binary), araek (infix) bir operatördür. instanceof operatörünün birinci
@@ -1939,6 +1973,7 @@ public class RandomObjectArrayGenerator {
19391973
}
19401974
}
19411975
```
1976+
### instanceof operatörü ikinci operandına ilişkin türü kapsayıp kapsamadığına bakar
19421977
```java
19431978
/*----------------------------------------------------------------------------------------------------------------------
19441979
instanceof operatörü ikinci operandına ilişkin türü kapsayıp kapsamadığına bakar
@@ -1996,6 +2031,7 @@ class A {
19962031
}
19972032

19982033
```
2034+
### Sarmalayan Sınıflar (wrapper classes)
19992035
```java
20002036
/*----------------------------------------------------------------------------------------------------------------------
20012037
Sarmalayan Sınıflar (wrapper classes): Java'da her temel (built-in) türe karşılık bir sınıf getirilmiştir. Bunun
@@ -2028,6 +2064,7 @@ class A {
20282064
bu ctor'lar artık hiç kullanılmamalıdır. Bunun nedeni ileride ele alınacaktır
20292065
----------------------------------------------------------------------------------------------------------------------*/
20302066
```
2067+
### sarmalayan sınıfların MIN_VALUE ve MAX_VALUE isimli final static veri elemanları
20312068
```java
20322069
/*----------------------------------------------------------------------------------------------------------------------
20332070
Tamsayı, gerçek sayı ve char türlerine ilişkin sarmalayan sınıfların MIN_VALUE ve MAX_VALUE isimli final static
@@ -2050,6 +2087,7 @@ class App {
20502087
}
20512088
}
20522089
```
2090+
### sarmalayan sınıfların SIZE isimli final ve static veri elemanları
20532091
```java
20542092
/*----------------------------------------------------------------------------------------------------------------------
20552093
Boolean sınıfı haricindeki tüm sarmalayan sınıfların SIZE isimli final ve static veri elemanları ilgili
@@ -2073,6 +2111,7 @@ class App {
20732111

20742112
}
20752113
```
2114+
### sarmalayan sınıfların BYTES isimli final ve static veri elemanları
20762115
```java
20772116
/*----------------------------------------------------------------------------------------------------------------------
20782117
Boolean sınıfı haricindeki tüm sarmalayan sınıfların BYTES isimli final ve static veri elemanları ilgili
@@ -2096,6 +2135,7 @@ class App {
20962135

20972136
}
20982137
```
2138+
### nümeric türlerin parseXXX metotları ile bir yazıdan ilgili türe ilişkin değer elde edilebilir.
20992139
```java
21002140
/*----------------------------------------------------------------------------------------------------------------------
21012141
Bilindiği gibi nümeric türlerin parseXXX metotları ile bir yazıdan ilgili türe ilişkin değer elde edilebilir.
@@ -2120,6 +2160,7 @@ class App {
21202160
}
21212161
}
21222162
```
2163+
### Integer sınıfının radix (sayı sistemi) parametreli parseInt metodu
21232164
```java
21242165
/*----------------------------------------------------------------------------------------------------------------------
21252166
Integer sınıfının radix (sayı sistemi) parametreli parseInt metodu
@@ -2142,6 +2183,7 @@ class App {
21422183
}
21432184
}
21442185
```
2186+
### Aşağıdaki örnekte substring ve parseInt metotları kullanılarak yazı içerisindeki not bilgisi elde edilmiştir.
21452187
```java
21462188
/*----------------------------------------------------------------------------------------------------------------------
21472189
Aşağıdaki örnekte substring ve parseInt metotları kullanılarak yazı içerisindeki not bilgisi elde edilmiştir.
@@ -2180,6 +2222,7 @@ class App {
21802222
}
21812223

21822224
```
2225+
### Yuklarıdaki örnekte indeksler bulundak sonra sayıya çevirme işlemi Java 9 ile birlikte eklenen parseInt metodu ile çok daha kolay bir biçimde yapılabilir.
21832226
```java
21842227
/*----------------------------------------------------------------------------------------------------------------------
21852228
Yuklarıdaki örnekte indeksler bulundak sonra sayıya çevirme işlemi Java 9 ile birlikte eklenen parseInt

0 commit comments

Comments
 (0)