(360 Örnek Uygulama) Java ile Programlama Java'nın Temelleri – Sınıflar ve Nesneler – Java API Prof. Dr. Timur Karaçay  - Kitap
(360 Örnek Uygulama)

Java ile Programlama

Java'nın Temelleri – Sınıflar ve Nesneler – Java API

3. Baskı, 
Ekim 2016
Kitabın Detayları
Dili:
Türkçe
Ebat:
16x24
Sayfa:
626
Barkod:
9789750239274
Kapak Türü:
Karton Kapaklı
Kitabın Fiyatı:
665,00
İndirimli (%39):
405,00
24 saat içerisinde temin edilir.
Kitabın Açıklaması
Gözden geçirilmiş 3. baskısını yapan bu kitap Java'ya giriş niteliğinde olup, hiç programlama bilmeyenlere Java'yı öğretmek amacıyla yazılmıştır. Sisteminize java programlama ortamlarını nasıl yükleyeceğinizden başlayarak, Java görsel programlama araçlarını tanıtan kitap, 300 den fazla örnek program ile konuları akıcı bir üslup ve pedagojik yöntemlerle anlatmaktadır.
Genel amaçlı bir programlama dilinin temel kavramlarıyla başlayan kitap, adım adım nesne yönelimli programlama kavramına geçmekte ve programcılara büyük kolaylık sağlayan java API (java kütüphanesi)'nin nasıl kullanılacağını anlatmaktadır. Sürekli çalışıldığında üç haftadan daha kısa zamanda biten konular, okul ortamında bir sömestrede işlenebilecek biçimde tasarlanmıştır.
Otuzdan çok kitaba imza atmış olma yanında TDK ve TÜBA'nın bilimsel terim üretme çalışmalarına etkin olarak katılan yazar, bu kitapta da Türkçe bilim terimlerini kullanmaya özen göstermiştir.
Kitabın Konu Başlıkları
.
Java ile Programlama Ortamları
.
Sınıflar ve Nesneler
.
Veri tipleri ve Değişkenler
.
Operatörler
.
Program Akışının Yönlendirilmesi
.
Döngüler
.
Metotlar
.
Giriş–Çıkış İşlemleri
.
Kalıtım, Çoklu Yapı
.
Java API Kütüphanesi
Yorumlar
Kitabın İçindekileri
1 Java Nedir? 1 
1.1 Java Programlama Dili . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 
1.1.1 Platform Ba§mszlk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 
1.2 Java Dilinin Ba³lca Nitelikleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 
1.3 Java Uygulama Geli³tirme Araçlar . . . . . . . . . . . . . . . . . . . . . . . . . . 5 
1.4 Yazlm Geli³tirme Araçlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 
1.4.1 Uygulama Programlar Arayüzü . . . . . . . . . . . . . . . . . . . . . . . 5 
1.4.2 Kullanc Arayüzü Araçlar . . . . . . . . . . . . . . . . . . . . . . . . . . 6 
1.4.3 Bütünle³ik Kütüphaneler . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 
1.5 Java Dilinin Ba³lca Uygulamalar . . . . . . . . . . . . . . . . . . . . . . . . . . 6 
2 Program Yazmaya Giri³ 7 
2.1 Kaynak Program Derleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 
2.2 Hata Ayklama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 
2.3 Çkty Yazdrma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 
2.4 Kaynak Programn Biçemi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 
2.5 Snf (class) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 
2.6 Bloklar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 
2.7 Programa Açklama Ekleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 
3 Veri Tipleri ve De§i³kenler 17 
3.1 Java Dilinde Veri Tipleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 
3.1.1 Veri Tipleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 
3.2 lkel Veri Tipleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 
3.2.1 void . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 
iv ÇNDEKLER 
3.2.2 null . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 
3.2.3 En Büyük ve En Küçük int Saylar . . . . . . . . . . . . . . . . . . . . . . 20 
3.2.4 Sonsuzluk ve Belirsizlik . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 
3.3 Veri Tiplerinin Öntanml De§erleri . . . . . . . . . . . . . . . . . . . . . . . . . . 22 
3.4 Referans Tipleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 
3.5 Null Tip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 
3.6 Neden Veri Tipi? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 
3.7 De§i³ken Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 
3.8 De§i³ken Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 
3.9 Java'da Adlandrma Kurallar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 
3.10 Kapsama Alan (scope) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 
3.11 Statik Ö§eler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 
3.12 Sabitler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 
3.12.1 Sabit Gerekli mi? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 
3.13 Anlk De§i³kenler (instant variables) . . . . . . . . . . . . . . . . . . . . . . . . . 37 
3.14 Yerel De§i³kenler (local variables) . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 
3.15 Parametreler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 
3.16 Atama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 
3.17 Kutulama (Boxing) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 
3.18 Generics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 
4 Operatörler 45 
4.1 Aritmetik Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 
4.1.1 kili Operatörler (+, –, * , / , %) . . . . . . . . . . . . . . . . . . . . . . . 45 
4.1.2 Bölme (/) i³lemi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 
4.1.3 Kalan (modulus) Operatörü . . . . . . . . . . . . . . . . . . . . . . . . . . 53 
4.1.4 Birli (unary) Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 
4.2 Atama Operatörleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 
4.3 Mantksal (Logic) Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 
4.3.1 && Operatörü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 
4.3.2 ¦¦ Operatörü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 
4.4 li³kisel Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 
4.5 Bitsel (Bitwise) Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 
4.6 Ba³ka Operatörler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 
4.7 Sorular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 
5 Döküm (casting) 75 
5.1 Döküm Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 
5.2 lkel Say Tipleri ve Say Nesneleri . . . . . . . . . . . . . . . . . . . . . . . . . . 82 
ÇNDEKLER v 
5.3 int Sarmalayan Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 
5.4 Integer Nesnesinden String'e Dönü³üm . . . . . . . . . . . . . . . . . . . . . . . . 84 
6 Karekterler 85 
6.1 Karekterlerin Kodlanmas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 
6.2 ve Character . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 
6.3 Kaç³ (Escape) Karekterleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 
6.4 Character Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 
7 String snf 95 
7.1 String Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 
7.2 String Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 
7.3 null ve Bo³luk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 
7.4 String'in Uzunlu§u . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 
7.5 Stringleri Birle³tirme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 
7.6 Dönü³ümler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 
7.6.1 Array'den String'e Dönü³üm . . . . . . . . . . . . . . . . . . . . . . . . . 101 
7.6.2 String'den Array'e Dönü³üm . . . . . . . . . . . . . . . . . . . . . . . . . 101 
7.6.3 toString() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 
7.6.4 Büyük–Küçük Harfe Dönü³üm . . . . . . . . . . . . . . . . . . . . . . . . 102 
7.6.5 trim() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 
7.6.6 charAt() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 
7.6.7 valueOf() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 
7.7 String çinde Arama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 
7.8 String'leri Kar³la³trma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 
7.9 String Dizimleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 
7.10 String Snfnn Ba³lca Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 
7.11 Komut Satr Argümanlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 
7.12 StringBuer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 
7.13 StringBuilder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 
7.14 Sorular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 
8 Çkty Biçemleme 123 
8.1 Biçemli Çkt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 
8.2 java.io.PrintStream Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 
8.2.1 print() ve println() Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . 124 
8.2.2 print() Metodunun Yetmezli§i . . . . . . . . . . . . . . . . . . . . . . . . . 125 
8.3 printf() Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 
8.3.1 Örnekler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 
8.4 Dönü³türücüler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 
vi ÇNDEKLER 
8.4.1 Desenciler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 
8.4.2 Bayraklar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 
8.5 PrintWriter Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 
9 System snf 145 
9.1 System Snf Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 
9.1.1 System.out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 
9.1.2 System.in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 
9.1.3 System.err . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 
9.2 System Snfnn Ba³lca Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . 147 
9.2.1 Örnekler: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 
10 Arrays Snf 153 
10.1 Array Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 
10.2 Array Türleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 
10.3 Tek Boyutlu Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 
10.4 [ ] Operatörü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 
10.5 Array Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 
10.5.1 Array Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 
10.5.2 Array Nesnesi Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 
10.5.3 Bile³enlere De§er Atama Yöntemleri . . . . . . . . . . . . . . . . . . . . . 158 
10.5.4 Örnekler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 
10.5.5 Array'in Bile³enleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 
10.5.6 Bile³enlerin Öntanml De§erleri . . . . . . . . . . . . . . . . . . . . . . . 162 
10.5.7 Örnekler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 
10.5.8 Array'in Bile³enlerine Eri³im . . . . . . . . . . . . . . . . . . . . . . . . . 165 
10.5.9 Array'in Uzunlu§unu Bulma . . . . . . . . . . . . . . . . . . . . . . . . . 166 
10.5.10For–each Döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 
10.6 Array Kopyalama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 
10.6.1 Atama Yöntemiyle Aktarma . . . . . . . . . . . . . . . . . . . . . . . . . 168 
10.6.2 Array Kopyalayan Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . 174 
10.7 Array Sralama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 
10.8 Çok Boyutlu Arrayler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 
10.8.1 Çok Boyutlu Array Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 
10.8.2 Çok Boyutlu Arraylerin Bile³enlerine Eri³im . . . . . . . . . . . . . . . . . 179 
10.8.3 Çentikli Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 
10.9 Array'e Ele³tiri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 
10.9.1 Array Yapsnn Avantajlar . . . . . . . . . . . . . . . . . . . . . . . . . . 187 
10.9.2 Array Yapsnn Dezavantajlar . . . . . . . . . . . . . . . . . . . . . . . . 188 
ÇNDEKLER vii 
10.9.3 Array Yerine Ba³ka Yaplar . . . . . . . . . . . . . . . . . . . . . . . . . . 188 
11 Java Nitelemleri 189 
11.1 Eri³im Belirtkeleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 
11.2 Snar ve Ö§eler çin Eri³im Kstlar . . . . . . . . . . . . . . . . . . . . . . . . 191 
11.2.1 Snf Düzeyinde Eri³im Kstlar . . . . . . . . . . . . . . . . . . . . . . . . 191 
11.2.2 Ö§e Düzeyinde Eri³im Kstlar . . . . . . . . . . . . . . . . . . . . . . . . 191 
11.2.3 public . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 
11.2.4 protected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 
11.2.5 private . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 
11.2.6 Al³trmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 
11.3 Öteki Belirtkeler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 
11.4 Statik ve Anlk Ö§eler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 
11.4.1 static Ö§eler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 
11.4.2 Anlk (instant) Ö§eler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 
11.5 Al³trmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 
11.6 JVM Niteleyicileri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 
12 Metotlar 215 
12.1 Metot Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 
12.2 Static Ö§e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 
12.3 Metot Kavram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 
12.3.1 Parametreler ve Yerel De§i³kenler . . . . . . . . . . . . . . . . . . . . . . 217 
12.4 main() Metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 
12.5 Ada³lama (Overload) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 
12.6 Nesne Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 
12.7 Hazr Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 
12.8 java.lang.Math . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 
12.8.1 Fibonacci Saylar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 
12.9 Kullancnn Tanmlad§ Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . 231 
12.10Uygulamalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 
12.11String'den Tamsayya Dönü³üm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 
13 Program Ak³nn Denetimi 245 
13.1 Blok . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 
13.2 Yönlendiriciler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 
13.2.1 Yaln if Yaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 
13.2.2 if–else yönlendirmesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250 
13.2.3 Çoklu durum seçene§i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 
13.2.4 Ko³ullu Operatör . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 
viii ÇNDEKLER 
14 Döngüler 267 
14.0.1 while döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 
14.1 do . . . while . . . döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 
14.2 For döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 
14.3 For–each Döngüsü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 
15 Java Snar 279 
15.1 Snf (class) Yaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 
15.2 Basiti anlamak zordur! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282 
15.3 Sorular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 
16 Kurucular 287 
16.1 Snf ve Nesne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 
16.2 Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 
16.2.1 Öntanml Kurucu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 
16.2.2 Parametresiz Kurucu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 
16.2.3 Parametreli Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 
16.3 Uygulamalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 
16.4 Al³trmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 
16.5 Özet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 
17 Statik ve Anlk Ögeler 317 
17.1 static Ö§elere Eri³im . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 
17.2 Anlk Ö§elere Eri³im . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 
17.3 Neden Nesne Yönelimli Programlama? . . . . . . . . . . . . . . . . . . . . . . . . 319 
17.4 Metot Ça§rma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 
17.5 Hata Ayklama (debug) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320 
17.6 Al³trmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 
18 Kaltm (inheritance) 329 
18.1 Mesaj letme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 
18.2 Çokbiçemlilik (polymorphism) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 
18.3 Al³trmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 
19 Soyut Snar 337 
19.1 Soyut Snf Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 
19.2 Soyut Snf Neden Gereklidir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 
19.3 Soyut Snf Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 
20 Arayüzler 343 
20.1 Her Oyuncu Kendi Sözünü Söyler . . . . . . . . . . . . . . . . . . . . . . . . . . . 343 
ÇNDEKLER ix 
20.2 Neden Arayüz? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 
20.3 Arayüz Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 
20.4 Arayüzü Kurgulama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 
20.5 Comparable Arayüzü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 
20.6 Basklanan compareTo() Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . 346 
20.6.1 Boolean Snfnda Kurgulama . . . . . . . . . . . . . . . . . . . . . . . . . 347 
20.6.2 Integer Snfnda Kurgulama . . . . . . . . . . . . . . . . . . . . . . . . . 347 
20.6.3 Character Snfnda Kurgulama . . . . . . . . . . . . . . . . . . . . . . . . 348 
20.7 Çokbiçemlilik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 
20.8 Arayüz Ne Yapar? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 
20.9 Arayüz le Soyut Snf Arasndaki Farklar . . . . . . . . . . . . . . . . . . . . . . 349 
20.10Arayüzün Yaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350 
20.11Bir Arayüzü Birden Çok Snf Kurgulayabilir . . . . . . . . . . . . . . . . . . . . 351 
20.12Bir Snf Birden Çok Arayüz Kurgulayabilir . . . . . . . . . . . . . . . . . . . . . 352 
21 Çoklubiçem 355 
21.1 Çok Biçemlilik Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 
21.2 Metot Bildirimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 
21.2.1 Metot mzas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356 
21.3 Çoklubiçem Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358 
21.4 Ada³lama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358 
21.5 Basklama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 
21.6 Statik ve Dinamik Ba§layclar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 
21.7 Çoklubiçem Gerekli mi? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 
21.8 Al³trmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376 
22 E³zamanl ³lemler 377 
22.1 Çoklu ³lemler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 
22.1.1 Teklii³ Akm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 
22.1.2 Çoklui³ Akm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 
22.2 Thread (izlek) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 
22.2.1 Thread Türleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 
22.3 Java Dilinde Thread . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 
22.4 java.lang.Thread Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 
22.4.1 Thread Snfnn Ba³lca Metotlar . . . . . . . . . . . . . . . . . . . . . . 382 
22.5 Java'da Thread Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382 
23 Scanner Snf 389 
23.1 Yerel say biçemleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 
23.2 Scanner Snfnn Kurucular: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 
x ÇNDEKLER 
23.3 Scanner Snfnn Baz Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 
23.3.1 java.lang.Object snfndan kaltsal gelen metotlar . . . . . . . . . . . . . 392 
24 java.io Paketi 397 
24.1 Java'da Giri³/Çk³ ³lemleri (I/O) . . . . . . . . . . . . . . . . . . . . . . . . . . 397 
24.2 Giri³/Çk³ Akmlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399 
24.3 Byte akmlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400 
24.4 java.io . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 
24.5 InputStream Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402 
24.5.1 InputStream Snfnn Kurucular . . . . . . . . . . . . . . . . . . . . . . . 403 
24.5.2 InputStream Snfnn Metotlar . . . . . . . . . . . . . . . . . . . . . . . . 403 
24.5.3 InputStream Snfnn Altsnar . . . . . . . . . . . . . . . . . . . . . . . 403 
24.6 OutputStream Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404 
24.6.1 OutputStream Snfnn Kurucular . . . . . . . . . . . . . . . . . . . . . . 404 
24.6.2 OutputStream Snfnn Metotlar . . . . . . . . . . . . . . . . . . . . . . . 405 
24.6.3 OutputStream Snfnn Altsnar . . . . . . . . . . . . . . . . . . . . . . 405 
24.6.4 FilterOutputStream Snfnn Altsnar . . . . . . . . . . . . . . . . . . . 405 
24.7 Reader Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406 
24.8 Writer Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408 
24.9 Uygulamalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410 
24.9.1 Byte Kopyalama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410 
24.9.2 Satr Kopyalama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412 
24.9.3 Klavyeden Integer Okuma . . . . . . . . . . . . . . . . . . . . . . . . . . . 412 
24.9.4 Dosyadan Double Say Okuma . . . . . . . . . . . . . . . . . . . . . . . . 413 
24.9.5 Dosya Okuma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 
24.9.6 DataInputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 
24.9.7 DataOutputStream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416 
24.9.8 LineNumberReader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418 
25 nio 421 
25.1 Kanallar ve Buerlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421 
25.1.1 java.nio Paketi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422 
25.1.2 java.nio.cahannels Paketi . . . . . . . . . . . . . . . . . . . . . . . . . . . 422 
25.2 java.nio.Buer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423 
25.3 Buer Snfnn Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 
25.3.1 Arabelle§in Özeliklerini Bilme . . . . . . . . . . . . . . . . . . . . . . . . . 425 
25.4 java.nio.channels.Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 
25.4.1 Channels Snfnn Metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . 426 
25.5 Buer ³lemleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427 
ÇNDEKLER xi 
25.5.1 Buer Olu³turma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 
25.5.2 Buer'a Yazma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430 
25.5.3 Buer'dan Okuma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431 
25.6 Uygulamalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434 
25.6.1 Dosya'dan Okuma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434 
25.6.2 Dosya'ya Yazma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436 
25.6.3 Buer'n Niteliklerini Sor . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 
25.6.4 ByteBuer'dan Dosyaya Yazma ve Ekleme . . . . . . . . . . . . . . . . . 442 
25.6.5 Dosya Kopyalama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442 
25.7 Al³trmalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 
26 javadoc 449 
26.1 JavaDoc Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449 
26.2 JavaDoc Hazrlama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450 
26.3 JavaDoc Taklar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450 
26.4 Örnek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451 
27 Çkty Biçemleme 455 
27.1 Format() metodu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455 
27.2 Saylarn Stringe Dönü³türülmesi . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 
27.2.1 Concatenation (+) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 
27.3 Biçemleme Dönü³türücüleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457 
27.4 Tamsay Biçemleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459 
27.4.1 . simgesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459 
27.4.2 , simgesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460 
27.4.3 ; simgesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460 
27.4.4 ' simgesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460 
27.5 Saylarn Üstel Notasyonla Gösterilmesi . . . . . . . . . . . . . . . . . . . . . . . 465 
27.5.1 Yöresel Çkt Biçimleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467 
27.5.2 Yöresel Para Simgelerini Yazdrma . . . . . . . . . . . . . . . . . . . . . . 467 
27.5.3 Tarih ve Saat Biçemleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468 
28 Tarih ve Zaman 469 
28.1 Zaman Ölçmek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469 
28.2 Takvimler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 
28.2.1 Julian Takvimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 
28.2.2 Gregorian Takvimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 
28.3 Locale Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 
28.4 Date Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 
28.4.1 Date Snfnn Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 
xii ÇNDEKLER 
28.4.2 Date snfnn metotlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474 
28.5 Yöresel Tarih ve Zaman Desencileri . . . . . . . . . . . . . . . . . . . . . . . . . . 475 
28.6 Calendar Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477 
28.6.1 Calendar Snfnn Kurucular . . . . . . . . . . . . . . . . . . . . . . . . . 478 
28.6.2 Calendar Snfnn Ba³lca Metotlar . . . . . . . . . . . . . . . . . . . . . 478 
28.7 GregorianCalendar Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 
28.7.1 GregorianCalendar Snfnn Kurucular . . . . . . . . . . . . . . . . . . . 480 
28.8 Java'da Tarih Biçemleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482 
28.9 DateFormat Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482 
28.10SimpleDateFormat Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484 
28.10.1 SimpleDateFormat Snfnn Kurucular: . . . . . . . . . . . . . . . . . . . 485 
28.10.2Tarih ve Zaman Desencileri . . . . . . . . . . . . . . . . . . . . . . . . . . 488 
28.11String'den Tarihe Dönü³üm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488 
28.12Tarih'ten String'e Dönü³üm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 
29 JFC 495 
29.1 JFC Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495 
29.2 MVC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496 
29.3 GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497 
29.4 WIMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497 
29.5 Alet Çantalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498 
29.6 Yapsal ö§eler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499 
29.6.1 Yöreselle³tirme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502 
30 AWT 503 
30.1 AWT Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503 
30.2 GUI Araçlar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504 
30.2.1 Component Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505 
30.2.2 Component'in Alt Snar . . . . . . . . . . . . . . . . . . . . . . . . . . . 506 
30.3 Container Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506 
30.3.1 Çok Kullanlan Ta³yclar . . . . . . . . . . . . . . . . . . . . . . . . . . . 507 
30.4 AWT Snar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510 
30.5 AWT Uygulamalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510 
30.5.1 Container Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511 
30.5.2 Frame'i Boyutlandrma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516 
30.5.3 Button Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518 
30.5.4 Applet Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519 
30.6 Checkbox Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 519 
30.6.1 Checkbox Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520 
ÇNDEKLER xiii 
30.6.2 TextArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520 
31 Konu³landrclar 523 
31.1 LayoutManager Snar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524 
31.1.1 Container Snfnn add() Metotlar: . . . . . . . . . . . . . . . . . . . . . 525 
31.1.2 Mutlak Konu³landrma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525 
31.2 BorderLayout Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526 
31.3 FlowLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531 
31.4 GridLayout Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535 
31.5 GridBagLayout Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536 
32 Swing 539 
32.1 Swing Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539 
32.2 JFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540 
32.3 Javax.swing Paketleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 
32.4 Örnekler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542 
32.4.1 JWindow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543 
32.4.2 JFrame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543 
32.4.3 JButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545 
32.4.4 JTextField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546 
32.4.5 JCheckBox ve JRadioButton . . . . . . . . . . . . . . . . . . . . . . . . . 548 
32.4.6 JCheckBox Snfnn Kurucular . . . . . . . . . . . . . . . . . . . . . . . . 548 
32.4.7 JComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550 
32.4.8 JComboBox snfnn ba³lca metotlar . . . . . . . . . . . . . . . . . . . . 550 
32.4.9 JList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551 
32.4.10 LayoutManagers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553 
32.5 Hesap Makinesi Önyüzü . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555 
33 Olay Yönetimi 561 
33.1 Olay Yönetimi Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561 
33.2 Java'da Olay Yönetimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562 
33.3 Olay ve Olay Yönetimi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565 
33.3.1 Tnnn Sesi Veren Dü§me . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568 
33.4 Netbeans ile Arayüz Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569 
33.4.1 Proje Ba³latma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569 
33.4.2 Ta³yc Levhay Yaratma . . . . . . . . . . . . . . . . . . . . . . . . . . . 570 
33.4.3 Pencereye Bile³en Ekleme . . . . . . . . . . . . . . . . . . . . . . . . . . . 571 
33.4.4 Bile³enleri Yeniden Adlandrma . . . . . . . . . . . . . . . . . . . . . . . . 572 
33.4.5 Arayüze ³levsellik Kazandrma . . . . . . . . . . . . . . . . . . . . . . . . 574 
33.4.6 Program Ko³turma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 576 
xiv ÇNDEKLER 
34 Applet 583 
34.1 Applet Nedir? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583 
34.2 Applet'in Rakipleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584 
34.3 Applet Snf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584 
34.3.1 Applet Yapma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585 
34.3.2 Appleti HTML Döküman çine Yerle³tirme . . . . . . . . . . . . . . . . . 587 
34.3.3 Appleti Görme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588 
34.4 Uygulamalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589 
35 Program Hatalarn Ayklama 593 
35.1 Hata yakalanmazsa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595 
35.2 Hata yakalama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596 
35.3 try/catch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597 
35.4 Çoklu Hata Yakalama (Multiple Catch) . . . . . . . . . . . . . . . . . . . . . . . 602 
35.5 çiçe Hata Deyimleri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604 
35.6 throw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607 
35.7 throws . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608 
35.8 nally . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609 
36 Java Dilinin Sakl Sözcükleri 613