Abstraction
Tutaq ki, Car, BMW, Mercedes classlarimiz var. Car classinda start stop speedUp metodlari movcuddur. BMW ve Mercedes Car classindan extend etdikden sonra bu metodlari Override elemelidir ki, ozune uygunlashdirsin.
Eger Override elemek yaddan chixsa, ve bashqa adli metod duzeltse, bu zaman arxitekturadan qiraga chixmish olacaq.
Buna gore abstract class lardan istifade olunur. Abstract class da verdiyimiz arxitekturani, yeni verdiyimiz metodlar mutleq override olunmalidir.
Eger yaratmaga cehd etsek, bu zaman JVM ozu avtomatik obyekt yaradir ve bu obyekt abstract class in obyekti olmur, sadece onu extend ede classin obyekti olur.
Inner Class ve Nested Class anlayishlari
Inner class dedikde, Class daxilinde yaradilan ve yalniz obyekte xas olan class basha dushulur. (non-static)
Nested class dedikde, Class daxilinde yaradilan ve class a aid olan class basha dushulur (static)
Konkret Metodlar
Abstract class daxilinde konkret metodlar yaratmaq uchun abstract keyworddan istifade olunmur. Tutaq ki, Car classinda startAndStop metodu var. Bu metod hemen class-daki abstract start ve stop metodlarini cagirir.
Konkret metodlarda Override olunmaq teleb olunmur. Amma lazim olduqda , override oluna biler. Ashagidaki kod numunesinde polimorfizme esaslanaraq yaradilan obyektin, startAndStop metodunu cagirmaq olar.
Eger Override elemek yaddan chixsa, ve bashqa adli metod duzeltse, bu zaman arxitekturadan qiraga chixmish olacaq.
Buna gore abstract class lardan istifade olunur. Abstract class da verdiyimiz arxitekturani, yeni verdiyimiz metodlar mutleq override olunmalidir.
Abstract classlarin obyektini yaratmaq mumkun deyil
Eger yaratmaga cehd etsek, bu zaman JVM ozu avtomatik obyekt yaradir ve bu obyekt abstract class in obyekti olmur, sadece onu extend ede classin obyekti olur.
Car abstractCar = new Car() { @Override public void start() { } @Override public void stop() { } };
Inner Class ve Nested Class anlayishlari
Inner class dedikde, Class daxilinde yaradilan ve yalniz obyekte xas olan class basha dushulur. (non-static)
Nested class dedikde, Class daxilinde yaradilan ve class a aid olan class basha dushulur (static)
Konkret Metodlar
Abstract class daxilinde konkret metodlar yaratmaq uchun abstract keyworddan istifade olunmur. Tutaq ki, Car classinda startAndStop metodu var. Bu metod hemen class-daki abstract start ve stop metodlarini cagirir.
Konkret metodlarda Override olunmaq teleb olunmur. Amma lazim olduqda , override oluna biler. Ashagidaki kod numunesinde polimorfizme esaslanaraq yaradilan obyektin, startAndStop metodunu cagirmaq olar.
Car bmw = new BMW(); bmw.startAndStop();
Comments
Post a Comment