![]() |
| | #1 (permalink) |
| Nesne tabanlı programlamanın üç temel ögesi vardır. Bunlar, çok biçimlilik (polymorphism), kapsülleme (encapsulation) ve kalıtımdır (inheritance). Nesne tabanlı programlamada çok biçimlilik, nesnelerin dışarıdan aynı yapıda görünmelerine rağmen içerde farklı işlem yapmalarıdır. Bu nedenle sınıflar nesnelerin içindeki farklılıklardan etkilenmeden çalışır. Çok biçimlilik aslında bir arayüz (interface) kullanarak birden fazla metodun kullanılmasını sağlar. Çok biçimliliğin amacı, genel bir sınıf belirtip aynı arayüzü kullanarak oluşabilecek karmaşıklığı azaltmaktır. Nesne tabanlı programlamada sınıflar belli bir sıraya göre tasarlanır. Başta genel bir sınıf sonra da bu sınıftan oluşmuş ve yeni elemanlar katılarak farklı özelliklere sahip yeni sınıflar vardır. Yeni oluşturulan sınıflar temel sınıfın özelliklerini taşır. Ancak oluşturulan sınıflar temel sınıfın özelliklerini taşırlarken temel sınıf türetilen sınıfın özelliklerini taşımaz. Bir örnekle açıklayacak olursak; OKULLAR sınıfının genel bir sınıf olduğunu düşünelim. Bu sınıfın bir elemanı olan MESLEK LİSELERİ vardır. Okullar sınıfının özelliklerini meslek liselerine geçirebiliriz. Ama tam tersi söz konusu değildir. Çünkü her meslek lisesi bir okuldur ama her okul bir meslek lisesi değildir. Örnek Okul sınıfından Lise, Eml ve Fen sınıfları türetilerek Console’dan yapılan seçime göre okulun hangi tür olduğunu bulan programın kodları polymorphism mantığına göre yapılmıştır. ![]() Programda okul seçimi için switch() yapısı kullanılmıştır. Yapılan seçime göre (sec) program uygun satıra yönlendirilerek işlem yapılmaktadır. Herhangi bir seçim işleminde o sınıfa ait bir üye değişken oluşturularak yazma işlemi bu üye değişene (L.okulum, ML.okulum, F.okulum) göre gerçekleştirilmiştir. Buna göre programın ekran görüntüsü resim 3.1’deki gibi olur. ![]() Kaynak : MEGEP | Nesne Tabanlı Programlama 3
__________________ Beni Sevmek İçin Programlanma Devrelerini Yakarım ! | |
| | |
![]() |
| Seçenekler | |
| Stil | |
| |
Benzer Konular | ||||
| Konu | Konuyu Başlatan | Forum | Cevaplar | Son Mesaj |
| Çok Biçimlilik (Polymorphism) Nedir ? | Taner | Programlama | 0 | 12-08-2009 00:54 |