İçeriğe geç

Java OOP: Sınıf, Nesne, Kalıtım ve Polimorfizm

14.02.2024 4,858 okunma

Nesne Yönelimli Programlama Nedir?

Nesne Yönelimli Programlama (OOP), gerçek dünya varlıklarını nesne olarak modellemeye dayanan bir programlama paradigmasıdır. Java, başından beri OOP odaklı tasarlanmış bir dildir ve bu paradigmayı destekleyen güçlü bir altyapıya sahiptir. OOP; kod tekrarını azaltır, bakımı kolaylaştırır ve büyük ölçekli projeleri yönetilebilir hale getirir.

Sınıf ve Nesne

// Sınıf tanımı (şablon)
public class Araba {
    private String marka;
    private int hiz;

    public Araba(String marka) { this.marka = marka; }
    public void hizlan(int miktar) { this.hiz += miktar; }
    public String getMarka() { return marka; }
}

// Nesne oluşturma (örnek)
Araba benim = new Araba("Toyota");
benim.hizlan(60);

OOP'nin Dört Temel Prensibi

  • Kapsülleme (Encapsulation): Veriyi private yaparak dışarıya getter/setter üzerinden kontrollü erişim. İç implementasyon gizlenir.
  • Kalıtım (Inheritance): Bir sınıf başka sınıfın özelliklerini devralır. Kod tekrarını azaltır. extends ile uygulanır.
  • Polimorfizm (Polymorphism): Aynı mesajın farklı nesnelerde farklı davranış sergilemesi. Method overriding ve overloading.
  • Soyutlama (Abstraction): Karmaşık detayları gizleyerek sadece önemli özellikleri gösterme. Abstract class ve interface ile sağlanır.

Interface ve Abstract Class

// Interface - sözleşme tanımı
public interface Ucabilir {
    void uc();
    default String tanim() { return "Ucabilen varlik"; }
}

// Abstract class - kısmi implementasyon
public abstract class Hayvan {
    protected String ad;
    public abstract void sesCikar();
    public void tanit() { System.out.println("Ben: " + ad); }
}

SOLID Prensipleri

OOP'de kod kalitesini artıran SOLID prensipleri Java projelerinde standart kabul edilir:

  • Single Responsibility: Bir sınıfın tek sorumluluğu olmalı.
  • Open/Closed: Genişlemeye açık, değişime kapalı.
  • Liskov Substitution: Alt sınıf üst sınıfın yerine geçebilmeli.
  • Interface Segregation: İnce, özel amaçlı interface'ler tercih edilmeli.
  • Dependency Inversion: Soyutlamalara bağımlı ol, somut sınıflara değil.

Bilkey Java Programlama Kursu

Bilkey Bilişim Akademisi Java Programlama Kursu'nda OOP temelleri, SOLID prensipleri, koleksiyonlar ve Spring Boot konuları uygulamalı olarak öğretilmektedir. Kurtköy merkezimizde Java ile yazılım kariyerinizi inşa edin. 0216 354 7979

java oop java class object java kalıtım java polimorfizm java interface java nesne yönelimli
İleri Düzey Java Eğitimi hakkında bilgi almak ister misiniz?

Birebir özel yüz yüze eğitim yada uzaktan eğitim, esnek ders saatleri ile Pendik Kurtköy'de.