[Java lista] elvi kerdes: protected adattag
Szomor Attila
aszomor at computertechnika.hu
2009. Okt. 10., Szo, 16:25:08 CEST
Szasztok,
Azt hiszem nagyon eltértünk az eredeti kérdéstől, bár érdekes amit írtok,
de a jövő hetet el tölthetnénk hasznosabb témával is szerintem. Téma
lezárónak, ez igazából nem Java kérdés, hanem OOP és ott nagyon jól le van
írva mindenre a válasz, már rég óta !
Úgy tudom a PROTECTED-re a SHAPE minden programozási nyelvben a minta
példa, ahol az alaposztályban a DRAW egy ABSTRACT PROTECTED metódus amit
minden leszármazott köteles megvalósítani és viszont az őket használó
applikációk nem hívhatnak meg közvetlenül, mert a felhasználó applikációk
csak a SHOW metódust érik el, mert az a PUBLIC metódus.
Igaz, hogy ex metódus és nem adattag, de a szabály ugyan az marad rá
vonatkoztatva is !!!
A Java-ban ACCESSOR és a MUTATOR fogalma azért került elő mert a nyelv
megfogalmazásánál még nem gondoltak a PROPERTY-re, így utólag,
kompatibilitási és egyéb okok miatt csak ajánlásként tudott bekerülni a
nyelvbe ezek a metódusok kezdődjenek a 'get', 'is' vagy 'set' előtaggal
felkiáltással (nem csak a Java jellemzője a legtöbb interpretált nyelvbe
utólagosan került bele, pl PHP).
A legtöbb (általam ismert) program nyelv nem valósítja meg a 'C++'-ból
ismert többszörös öröklődés és a FREIND fogalom rendszert, de ennek
hiányát egy elfogadott, definiált szabály rendszerrel hidalják át, a
többszörös öröklődést az INTERFACE-ek általános célúvú tett
felhasználásával (eredetileg a CORBA, DCOM kezelése miatt került bele a
programozási nyelvekbe), a friend-et pedig az "egy egységen" belül
mindenre rálátunk szabályrendszerrel. Úgy tűnik ez annyira bevált, hogy a
C# sem változtatott rajta, pedig aztán már az említett program nyelvek
jócsakán bizonyítottak mire "őrá" csak gondoltak, ha a Billi nem akarta
volna a Java-ba bele ültetn i az ActiveX-et meg sem születik, mert ugye a
SUN MS Java háború kitöréséig Andres Hejlsberg (a Turbo Pascal atyja)
feladata a Visual Java fejlesztői környezet fejlesztésének irányítása
volt, azóta van C# és .NET ugye, milyen érdekes, hogy ott is a LINQ alapja
az NHibernate, de úgy látszik legalább a komolyabb fejlesztők normálisak,
próbálják a tudáshalmazt egyben tartani, persze a piaci érdekek mások.
Szőval zárjuk le a a "PROTECTED" kérdést és próbáljunk meg valami
hasznosról dumcsizni, mivel a ez a téma belevitt bennünket a JPA-ba, ezen
a területen lenne rengeteg kérdésem (mivel Mazsola vagyok a Java-ban, de
az is lehet hogy Tádé) és ez biztos mindannyiunkat előre vinne.
Előre is köszi, Attila.
--
Az Opera forradalmian új levelezőjét használva: http://www.opera.com/mail/
További információk a(z) Javalist levelezőlistáról