Interface

Abstract class kimi Interface - in de obyektini yaratmaq olmur.

Esas ferq bundan ibaretdir ki, class yalniz bir classi extends ede biler, lakin bir neche interface i implements ede biler.

extends - compile time safety
implements - safety ustunluyu yoxdur

Ferqi bele izah etmek olar ki, meselen Car classinda start ve stop metodlari var. Lakin bu metodlar ayricaliqda ozleri bir xusisyyetdir. Yeni neyinki mashin, bir neche eshya start ve stop oluna biler.Meselen Telefonun start ve stop olmasi da bir xususiyyetdir ve bu o demek deyil ki , telefon da Car classindan extends etmelidir.

Marker Interface - ler nedir ?

Misal uchun Serializable interface gostermek olar. Misal uchun her hansisa classn obyektini sebekede kimese gonderende , fayla yazanda ve ya oxuyanda mutleq bu interface i implement etmelidir.
Bes niye gore extends etmir, implement edir ?
Evvela, bir class yalniz bir classs dan extends ede biler. Bu o demekdir ki, meselen BMW class eyni zamanda hem Serailizable classindan hem de Car classin dan extend ede bilmez.
Lakin bu interface olsa, class istenilen qeder interface implement ede biler .  Buna gore, implement edir. Bashqa bir sebeb olaraq bunu gostermke olar ki,
eger bir insan Qaca bilirse, bu o demek deyil ki, bu Qachmaq uzre yarishcidir.
Sadece qacmaq xususiyyetine malikdir.
Bizim numuneye uygun olaraq, Class Car dir , hem de Serializable xusisiyyetine malikdir.

Comments

Popular posts from this blog

Validation for AZ phone numbers with RegEx in Java

Java necə işləyir, kod nədir ?

@Transactional annotation haqqinda. Cascade istifade olunmasi