NİŞANTAŞI ÜNİVERSİTESİ

Slides:



Advertisements
Benzer bir sunumlar
Programlama-II (Java ile Bilgisayar Programlama)
Advertisements

SINIFLAR Yılmaz Kılıçaslan.
ÇOKLU ORTAM UYGULAMALARINDA GÖRSELTASARIM.
JAVA EĞİTİMİ Serdar TÜRKEL
Programlama-II (Java ile Bilgisayar Programlama)
Nesneye Yönelik Programlama
OOP Tanımlar.
SANAL FONKSİYONLAR VE ÇOK BİÇİMLİLİK
NESNEYE DAYALI MODELLEME VE TASARIM
Görsel Okur-Yazarlık *
P AKET E RIŞIMLERI SıNıFLARıN YENIDEN KULLANıMı. P AKET ( P ACKAGE ) Paketler kütüphaneleri oluşturan elemanlardır. import java.io.BufferedReader; BufferedReader.
NESNEYE YÖNELİK PROGRAMLAMA
NESNEYE YÖNELİK PROGRAMLAMANIN TEMEL İLKELERİ GENEL BİR BAKIŞ
Erişim Denetimi, Fonksiyon
NESNE TABANLI PROGRAMLAMA -METOTLAR-
Nesneye Dayalı Programlama
Görsel Programlama Dr. Muhammet Balcılar
Nesneye Dayalı Programlama
NESNE YÖNELİMLİ PROGRAMLAMA
P p 5. Bolum en cok kullanilan veri yapilarindan biri olan listeleri anlatmaktadir. p p Bu sunum da listeler uzerinde en cok yapilan islemleri aciklamaktadir.
Bilişim Sistemleri Mühendisliği nedir? Neden ihtiyaç vardır?
Nesneye Yönelik Programlama
Önceki Dersi Hatırlama !!
Nesneye Yönelik Programlama (12. Sunu). İsim Uzayları (Namespaces) Sınıfınızda Deniz adında iki öğrenci olduğunu kabul ediniz. Böyle bir durumda bu öğrencileri.
Kalıtım , Sınıf Asli Ergün.
İŞLETİM SİSTEMİ.
Nesneye Dayalı Programlama
NESNE TABANLI PROGRAMLAMA VISUAL BASİC 6.0. NESNELERİN TASARIMI Uygulama Tasarım Alanı Proje Gezgini Nesne Özellikleri Araç Kutusu Forumun Ekrandaki Konumu.
Ders İçerik Sunusu Maltepe Üniversitesi
SANAL FONKSİYONLAR VE ÇOKBİÇİMLİLİK Yılmaz Kılıçaslan.
Bil 102 Bölüm 6 Diziler.
Programlama Dilleri Visual Basic C# C++ Pascal Delphi.
BTP206– Görsel Programlama II
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
İnsan Kaynakları Bilgi Sistemleri
İÇERİK YÖNETİM SİSTEMİ Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu.
NOT: Bu slayt üzerindeki resmi değiştirmek için resmi seçin ve silin. Ardından, kendi resminizi eklemek için yer tutucudaki Resimler simgesini tıklatın.
Nesneye Dayalı Programlama Temel Kavramlar Hüseyin ESKİ.
Bütün dünyayı nesneler (object) ve nesneler arası ilişki olarak gören model kullanılarak yapılan programlama. Bu programlama tekniğine göre her nesne.
NİŞANTAŞI ÜNİVERSİTESİ
Veri Tabanı Temel Kavramlar.
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
GARBAGE COLLECTOR (  ÇÖP TOPLAYICI ).
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

NİŞANTAŞI ÜNİVERSİTESİ NESNEye yönelİk PROGRAMLAMA ÇOK BİÇİMLİLİK KAVRAMI, BİRDEN FAZLA ARABİRİMİ UYGULAYAN SINIFLAR NİŞANTAŞI ÜNİVERSİTESİ © İktisadi, İdari ve Sosyal Bilimler Fakültesi iisbf.nisantasi.edu.tr

GİRİŞ Nesne tabanlı programlamanın dört temel ilkesi: Kapsulleme (Encapsulation) Kalıtım (Inheritence) Polimorfizm (Polymorphizm) Soyutlama(Abstraction)

GİRİŞ Ancak önceki slayttaki dört temel ilkenin birlikte kullanıldığı bir ortam gerçekten nesne tabanlı olacaktır. Bunlardan sadece birini sunan bir ortam (örneğin Visual Basic Dili) için nesne tabanlı demek olmaz. Java bu 4 prensip için de mekanizmalar sunmaktadır ve bu nedenle nesne tabanlı bir dildir.

ÇOK BİÇİMLİLİK KAVRAMI Java tip sisteminin bir yerde sadece belli tipten (yani sınıftan) bir nesne kabul edeceğidir. Belli bir sınıftan bir nesne beklenen yerde, başka bir sınıftan nesneyi kullanmanın iki tipik yolu vardır: Sarıcı (wrapper) kullanmak Çok biçimlilik (polymorphism) tekniği

ÇOK BİÇİMLİLİK KAVRAMI Çok biçimlilik (polymorphism), somut bir nesnenin farklı sınıflara ait nesneler beklenen yerlerde (sorun çıkarmadan) kullanılmasıdır. Bir nesnenin bir yerde istenen işlevselliği gösterebilmesi, onun beklenen davranışı (expected behavior) sağlamasıdır. Java dilinde, bu nesnenin istenen public yöntemlere ve verilere sahip olması demektir.

ÇOK BİÇİMLİLİK KAVRAMI Çok biçimlilik prensibi, Java’da bir sistemin kendisine gelecek nesnelerden beklediği davranışın bir şemsiye altında toplanması ve bu davranış listesine uyum sağlayan sınıfların da bu şemsiye altında toplandığının açık olarak belirtilmesi ile sağlanır. Java doğrudan basit çok biçimlilik sağlamak için çok basit bir mekanizma sunar: arabirim (interface).

ARABİRİMLER İLE ÇOK BİÇİMLİLİK Bir arabirime ait referans, o arabirim uygulayan tüm sınıfların nesnelerine bağlanıp, o nesneler üzerinden arabirimde tanımlı olan kısımlara erişime izin verir. Bir arabirim referansı, bağlandığı somut nesnenin aslında hangi sınıftan olduğunu bilmek zorunda değildir. Bu nedenle, arabirim referansı ile bakılan sınıf nesnesinin sadece arabirimde tanımlı yöntemleri ve verilerine erişilebilir.

ÖRNEK-1

ÖRNEK-1

ÖRNEK-1

ÖRNEK-1

ÖRNEK-1

ARABİRİMLER İLE ÇOK BİÇİMLİLİK Çok biçimlilik sayesinde büyük boyutlu sistemleri genişletmek kolaylaşır ve yazılım bakım (software maintenance) masrafları düşer. Bir arabirim referansı, herhangi bir nesneye bağlı değilse, arabirimi uygulayan sınıflar için instanceof işleci her zaman false dönecektir.

ÖRNEK-2

ARABİRİMLER İLE ÇOK BİÇİMLİLİK Arabirim referansları ile bu sınırlamalar dahilinde her şeyi yapabilirsiniz. Tipik olarak, bir arabirim referansı dizisi yaratıp dizideki her elemanı farklı bir somut sınıfın nesnesine bağlayabilirsiniz.

BİRDEN FAZLA ARABİRİMİ UYGULAYAN SINIFLAR Bir sınıf değişik kapsamlarda değişik roller üstlenmek zorunda kalabilir. Bu durumda karışıklığı engellemenin en kolay yolu, her kapsamda ayrı bir arabirim eklemek ve sınıfın birden fazla arabirimi desteklemesi olacaktır.

ÖRNEK-3 Önceki örneklerde kullandığımız Ogrenci arabirimine ek olarak Personel arabirimi oluşturup, her iki arabirimi de destekleyen yani uygulayan Asistan sınıfını yazınız.

ÖRNEK-3

ÖRNEK-3

ÖRNEK-3

ÖRNEK-3

ÖRNEK-3

BİRDEN FAZLA ARABİRİMİ UYGULAYAN SINIFLAR Birden fazla arabirimi uygulayan bir sınıfın nesnesine, belli bir arabirimden bir referans ile erişilince, sadece referansın ait olduğu arabirimin tanımlandığı dış görünüşe sahiptir. Bu nedenle elimizdeki referansla o belli arabirimde tanımlanmayan, ancak diğer arabirimlerde tanımlanan yöntemlere ve verilere erişemeyiz.

BİRDEN FAZLA ARABİRİMİ UYGULAYAN SINIFLAR Arabirimler, Java’da pratikte çok kullanılan bir tekniktir. Özellikle grafik kullanıcı arabirimi öğeleri ve çok sayıda olay işleyici (event handler) için olan standart Java kitaplık sınıfları arabirimlere dayanarak hazırlanmıştır. Java’da bu bileşenler ile uygulama geliştirdiğiniz zaman önceden hazırlanmış standart arabirimleri uygulayan sınıflar yazarsınız.

KayNAKlar Bora Güngören, Java ile Temel Programlama, Seçkin Yayıncılık, 2003 Kendinize Güvenerek Java, Musa Çavuş, Seçkin Yayıncılık, 2011