Skip to content

Instantly share code, notes, and snippets.

@muhomerdogu
Created May 25, 2021 14:41
Show Gist options
  • Save muhomerdogu/97cfb1fa4f6768f227d712c9c5eaa07d to your computer and use it in GitHub Desktop.
Save muhomerdogu/97cfb1fa4f6768f227d712c9c5eaa07d to your computer and use it in GitHub Desktop.
package override;
public class Test_2 {
//biraz da override yani üzerine yazmak için kullanılan bri yöntemdir.
//yeni özellikleri söylemediğim durumu aktarıyor olacağım.
//recap olacak. terkararlama demosu da olsun.ç
public static void main(String[] args) {
OgretmenKrediManager ogretmenKrediManager=new OgretmenKrediManager();
System.out.println(ogretmenKrediManager.hesapla(200)); //236 olarak karşımıza çıkar. oldukça ilerledik.
//artık prof. tekniklere geçtik. çok iyi anlayacak şekilde yapalım.
BaseKrediManager [] baseKrediManagers=new BaseKrediManager[]{new OgretmenKrediManager(),new TarimKrediManager(),new OgrenciKrediManager()};
for(BaseKrediManager baseKrediManager:baseKrediManagers)
{
System.out.println(baseKrediManager.hesapla(1000)); //ikisine de aynı tutar döndü.
//öğrenci için kredi açıldı ama kredi oranı ise 1.10 oalcaktr. ama burada öğrenci içinde aynı hesap yapılacaktır. oranı gelin değiştrielim bunun için
//override ile yapacağız.
//şimdi ise override ettik ve ezdik.biz burada ezdik ve override işinden yararlandık. c# içinse virtual operasyonlarla yapılır.
//siz aksini belirtmediğiniz sürece overridable olabilir.
//bir clası inherit eden başka bir klas ezebilir override edebilir. ben bunun ezilmesini engellemek istiyorum diyebiliriz.
//bir çok uygulama da durum böyledir.
//şu an yaptığımız işler daha çok arka plandır.
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment