Interfeisai ir klasės

Tarp šių dviejų yra plonytė linija daugumoje kalbų. Kai kurios, pvz.: C++ tokios sąvokos apskritai neturi, tačiau tas galiausiai pasiekiama naudojant tam tikrą programavimo šabloną.

Interfeisas neturi realizacijos

Interfeisas (angliškai "Interface", lietuviškai dažnai verčiama kaip "Sąsaja") neturi realizacijos. Kaip minėta kalbant apie klases (Klasė ir Objektas) klasė pati savaime yra šablonas aprašyti objektui, tačiau Interfeisą būtų galima apibrėžti lygiai taip pat. Taigi koks skirtumas?

a) Interfeise draudžiama realizuoti Metodus.

b) Iš Intefeiso negalima sukurti Objekto ...

pradmenys klasė interfeisas


Klasė ir objektas

Jų skirtumas yra gan aiškus, tačiau labai dažnai painiojamas ir nesuprantamas naujokų.

Klasė - šablonas, taisyklių rinkinys aprašantis Objektą

Objektas - duomenų struktūra sukurta pagal Klasėsaprašymą.

Pavyzdžiui, jeigu turime klasę Asmuo:

class Asmuo(string vardas, int amžius)

Tai ji mums nusako, jog kiekvienas asmuo turės vardą ir amžių, bet tai yra abstraktu, šablonas kitaip sakant. Konkretūs asmenys gali būti:

a = Asmuo("Onutė", 20)
b = Asmuo("Jonas", 14)
...

Šie konkretūs asmenys ir yra objektai

pradmenys klasė objektas