Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Önceki Dersi Hatırlama !! Nesne Tabanlı Programlamaya (NTP) ait 3 ana konu –Kapsüllenme –Miras –Polimorfizm Nesne Tabanlı Programlama da geçen ders öğrendiğimiz.

Benzer bir sunumlar


... konulu sunumlar: "Önceki Dersi Hatırlama !! Nesne Tabanlı Programlamaya (NTP) ait 3 ana konu –Kapsüllenme –Miras –Polimorfizm Nesne Tabanlı Programlama da geçen ders öğrendiğimiz."— Sunum transkripti:

1 Önceki Dersi Hatırlama !! Nesne Tabanlı Programlamaya (NTP) ait 3 ana konu –Kapsüllenme –Miras –Polimorfizm Nesne Tabanlı Programlama da geçen ders öğrendiğimiz bazı terimler –Sınıf –Obje –Bir sınıfı oluşturan yapılar –Üye –Sınıf örneği –Gizlilik (kapsüllenme) –Mesaj –Alıcı –Miras –Hiyerarşi çeşidi –Polimorfizm –Geç bağlanma (late binding)

2 Giriş Bu bölümde –Objeleri (nesneleri) nasıl oluşturacağız –Ve onları nasıl kullanacağımızı öğreneceğiz.

3 Sınıf Temelleri Sınıf içinde tanımlanan metot ve değişkenlere, sınıfın üyeleri denir. Java sınıfları bir main() metoduna sahip olmak zorunda değildir. Eğer o sınıf programın başlangıcı ise o zaman bir tane main metodu tanımlanır. Appletlerde ise main metoduna ihtiyaç duyulmaz.

4 Basit Sınıf class Kutu { double en; double boy; double yukseklik; } Kutu sandik = new Kutu(); Kutu sandik  nesnenin referansını bildirir. sandik= new Kutu()  bir kutu nesnesi oluşturulur.

5 New Komutu New komutu: Bellekte bir nesne için dinamik olarak yer ayırır. Run-time zamanında olur. Basit tipler için nesne oluşturulmaz.Böylece bu tipteki değişkenler daha verimli çalışırlar.

6 public class port { public static void main(String[] args) { Sablon nesne=new Sablon(); nesne.metod(); } } // ana class class Sablon { public void metod() { System.out.print("işte nesne tabanlı program"); } }//diğer class

7 port ve sablon adında iki sınıfımız var. –port.java, port sınıfını gösteriyor. –sablon.java, sablon sınıfını gösteriyor. –public tanıtılmış sınıflar mutlaka ayrı dosyalarda tanıtılmalıdır.aynı dosyada 1 tane puplic olur –sablon sınıfı kendi başına çalıştırılamaz. main metodu yok main metodunu içeren sınıf olan port sınıfı, sablon objesini oluşturur ve kullanır.

8 Her Java sınıfı başka bir sınıfı miras alır. –port sınıfı java.lang.Object sınıfını miras alır (extend). –Eğer bir sınıf tanımında extend sözcüğü yoksa o sınıf Kesinlikle Object sınıfını miras almıştır. –Object Sınıfı Metotları –Object clone() –boolean equals(Object nesne) –void finalize() –String toString() –Class getClas() –int hashCode() –void notify() –....

9 Sınıf yapılandırıcısı ( constructor) –Sınıf ismi ile aynı adı taşır. –Sınıfa ait değişkenlerin ilk değerlerini verir. –O sınıfa ait bir obje oluşturulacağı zaman otomatik olarak yapılandırıcı çağrılır. –Özel tip bir metottur –Parametre alabilir ama geriye değer döndürmez. –Bir sınıf birden fazla yapılandırıcıya sahip olabilir.(overloading sayesinde)

10 Sınıf yapılandırıcısı ( constructor) –Eğer uygulamamıza herhangi bir yapılandırıcı koymazsak Java bu işlemi kendi otomatik olarak yapmaktadır. –Varsayılan yapılandırcılar (parametresiz yapılandırcılar,default constructor veya “no-args” constructor) içi boş bir yordam olarak düşünülebilir –Eğer kendimiz yapılandırıcı yazarsak, Java bizden varsıyılan yapılandırıcı desteğini çekecektir. –Kendimize ait özel yapılandırıcılar tanımlarsak Java’ya "Ben ne yaptığımı biliyorum, lütfen karışma" demiş oluruz.

11

12  2003 Prentice Hall, Inc. All rights reserved. Aşırı Yüklenmiş (Overloaded)Yapılandırıcılar Kullanmak Aşırı Yüklenmiş Yapılandırıcılar –Aynı ismi alan metodlar (aynı sınıfın içinde) –Parametre listeleri farklı olmak zorunda

13  2003 Prentice Hall, Inc. All rights reserved.

14 statik metodlar Statik metodlar hatırlayın class adını yazdıktan sonra nokta koyarak çağırıyorduk. Math.pow() Statik olmayan metodlar bu metodlar sınıf üzerinden türetilmiş bir nesne ile ancak çağrılabilirler. Sablon nesne=new Sablon(); nesne.metod(); Main metodu neden static ?? Çünkü JVM nin hiçbir nesne oluşturmadan bu metodu çağırabilmesi lazım

15  2003 Prentice Hall, Inc. All rights reserved. Sınıfın Erişim Alanları Sınıfın erişim alanı –Sınıf değişkenleri ve metodları –Sınıf değişkenleri (üyeleri) tüm sınıf metodları tarafından erişilebilir. (Global değişken) –Üyeler isimleriyle refere edilirler. nesne.Üyeİsmi –Saklı sınıf değişkenleri ( içinde bulunulan sınıfı temsil eder) this.değişkenismi

16 Üyelere Erişimde Kontrol Üye erişim alanını değiştiriciler –Sınıf değişkenlerine ve metodlarına erişim anahtarları –public Değişkenler ve metodlar sınıf tarafından üretilen nesneler tarafından ulaşılabilir. –private Değişkenler ve metodlar sınıf tarafından üretilen nesneler tarafından ulaşılamazlar.

17 Kullanılan Nesnenin Üyelerine this Kalıbı ile Referans Verme Anahtar kelime this ( this reference) –Nesnenin kendisini referans etmesini sağlar. –Bu referans sayesinde nesnelere ait global alanlara erişme fırsatı buluruz.

18 Bir class çatısı anahtar class classİsmi { anahtar veritipi veriadi; public classİsmi() { // sınıf yapılandırıcısı } anahtar donustipi metodismi(parametre1,….) { // metoda ait ifadeler } Anahtar:public,private,static

19  2003 Prentice Hall, Inc. All rights reserved. Kullandığımız clasların incelenmesi Üye değişkenlerini seçebilme Üye metodlarını seçebilme Sınıf yapılandırıcılarını seçebilme Math sınıfı, JoptionPane,Jbutton,Jlabel,String

20  2003 Prentice Hall, Inc. All rights reserved. Kullandığımız sınıfları yazalım sürekli yapılan işler için yeni sınıflar yazalım Math sınıfını yazalım Türkçe tarih sınıfı yazalım (hangiAy(),hangiGun(),ayinKaci(),kacinciAy()) kelimeDuzenle sınıfı yazalım (kucukHarfYap(),buyukHarfYap(), turkceKarekterDuzelt(),


"Önceki Dersi Hatırlama !! Nesne Tabanlı Programlamaya (NTP) ait 3 ana konu –Kapsüllenme –Miras –Polimorfizm Nesne Tabanlı Programlama da geçen ders öğrendiğimiz." indir ppt

Benzer bir sunumlar


Google Reklamları