[Java lista] elvi kerdes: protected adattag

Istvan Soos syntern at sch.bme.hu
2009. Okt. 8., Cs, 08:10:03 CEST


On Oct 8, 2009, at 7:16 AM, zamek wrote:

> hello,
>
> Egy kollegam aki java-t tanit tette fel a kerdest, annak apropojabol,
> hogy egy hallgatojat nem tudta meggyozni arrol, hogy az ososztalyban
> deklaralt adattagokat ne protected-kent deklaralja, hanem private-kent
> es csinaljon hozza getter/setter metodusokat.
>
> A kerdes az volt, hogy tudok-e peldat arra, amikor szukseg lehet arra,
> hogy egy osztaly adattagjai protected-kent legyenek deklaralva?

pl. van egy belső control változó, amit a leszármazott osztály vezérel  
(pl. folyamat állapota, több szálra való kihatások), de külső hívó ne  
vezérelhessen. Ilyenkor nyilván nem jó egy publikus setter...

Dolgoztam olyan helyen, ahol alapból minden private volt, és csak szép  
lassan nyitottak ki valamit protected-be vagy publicba. Van néhány  
opensource project ami hasonló rendszert követett. Egész egyszerűen  
rossz kivárni, amíg valaki méltóztatik megváltoztatni a láthatóságot,  
csak azért, mert ő eredetileg úgy gondolta, hogy arra úgysem lesz  
szükség, az élet meg mást hozott ki.

Szerintem amúgy felesleges a túl sok control. Nem kell mindent public  
fieldbe rakni, de felesleges mindent private-ban kezelni. A protected  
megfelelően rugalmas mindenkinek hosszú távon...

István


További információk a(z) Javalist levelezőlistáról