Polimorfizmi ağır basan vs vs Aşırı
Biri sorduğunda Java açısından:
polimorfizmi nedir?
Aşırı yükleme veya geçersiz kabul edilebilir bir cevap olur muydu?
Fazlası için biraz fazla olduğunu düşünüyorum. Hiçbir uygulama yöntemi ile tanımlanan soyut bir temel sınıf vardı, ve alt sınıfta bu yöntemi tanımlanmışsa, o hala overridding?
Aşırı doğru bir cevap değil bence.
CEVAP
Polimorfizmi ifade etmek için en temiz yol soyut temel sınıf (veya arabirim)
public abstract class Human{
...
public abstract void goPee();
}
Bu sınıf goPee() yöntemi İnsanlar için tanımlanabilir değildir, çünkü soyut. Alt sınıflardan Erkek ve Kadın için sadece tanımlanabilir. Ayrıca, İnsan soyut bir kavram ve bir -; olamaz ne Erkek ne de Kadın olan bir insan yaratmak. Biri ya da diğeri olmalı.
Biz soyut sınıf kullanarak uygulama erteleme.
public class Male extends Human{
...
@Override
public void goPee(){
System.out.println("Stand Up");
}
}
ve
public class Female extends Human{
...
@Override
public void goPee(){
System.out.println("Sit Down");
}
}
Şimdi bütün bir oda işemeye İnsanlar tam olarak söyleyebiliriz.
public static void main(String[] args){
ArrayList<Human> group = new ArrayList<Human>();
group.add(new Male());
group.add(new Female());
// ... add more...
// tell the class to take a pee break
for (Human person : group) person.goPee();
}
Bu verim öğrenirdiniz:
Stand Up
Sit Down
...

Ağır basan bir default_scope Raylar...
Ya da alt sınıfların özellikleri ağır ...
Python, nasıl gösterir'm ağır bas...
Bir temel sınıf'In sanal işlev İ&...
Zamanında ağır basan kaynakları...