Sobes.tech
Junior — Middle

Nesne yönelimli programlamada yöntem aşırı yüklemesi ile üzerine yazma arasındaki fark nasıl anlaşılır?

sobes.tech yapay zeka

AI'dan gelen yanıt

Yöntem aşırı yükleme (overloading) ve yöntem geçersiz kılma (overriding) nesne yönelimli programlamada farklı kavramlardır:

  • Yöntem aşırı yükleme: Aynı sınıfta, farklı parametreler (tip, sayı) ile aynı ada sahip birkaç yöntem bulunmasıdır. Bu, farklı argümanlarla yöntemi çağırmaya olanak tanır.

  • Yöntem geçersiz kılma: Bir alt sınıfın, temel sınıfta tanımlanmış ve aynı imzaya (isim ve parametreler) sahip bir yöntemi kendi uygulamasıyla sağlamasıdır. Bu, alt sınıf için yöntemin davranışını değiştirmeye olanak tanır.

Java örneği:

class Animal {
    void sound() {
        System.out.println("Bazı sesler");
    }

    void sound(String mood) { // aşırı yükleme
        System.out.println("Ses " + mood);
    }
}

class Dog extends Animal {
    @Override
    void sound() { // geçersiz kılma
        System.out.println("Havlama");
    }
}

Burada, sound() Dog sınıfında temel sınıfın yöntemini geçersiz kılar ve sound(String mood) aynı sınıfta aşırı yüke sahiptir.