Hirdetés

Új hozzászólás Aktív témák

  • Gyuri16
    senior tag

    Rosszul kérdeztem, rossz példával :)
    Egy osztályban van 1 int x koordináta. Ennek bármilyen értéke lehet Integer.MAX_VALUE és Integer.MIN_VALUE között.
    Én csak azt látom eddig csak a getter/setter előnyének hogy ha 100 helyen olvassák és 1 helyen írják akkor könnyű megtalálni azt az 1 módosítási helyet.
    Hátránya hogy lassabb mert van közben egy metódus hívás.

    Hátránya hogy lassabb mert van közben egy metódus hívás.

    Nem feltetlenul, compiler ilyen dolgokat tud optimalizalni.

    Az elonyokrol mar irtak a tobbiek. Ha bovebben erdekel nezz utana valamilyen objektumorientalt programozasrol szolo konyvben/cikkben mirol szol az encapsulation.

    Ezeknek az OOP elveknek az elonye altalaban akkor latszik, ha az ember valami bonyolultabbat csinal. Vagy ha az eredetileg egyszeru osztalyokba uj dolgot kell hozzaadni. Ilyenkor elonyos ha mar az elejetol ugy volt irva a kod, hogy kesobb konnyu legyen valtoztatni. Viszont nyilvan tulzasba esni se jo, felesleges tulbonyolitani egy egyszeru kodot csak azert, mert egyszer lehet hogy szukseg lesz ra.

    Peldadhoz visszaterve: ha letrehoznal kesobb egy olyan osztalyt, ahol az x koordinata erteke csak egy kisebb intervallumbol lehet, akkor sokkal egyszerubb lesz megoldanod, ha a kodban mar van egy setter. Anelkul minden egyes helyet ahol uj erteket allitasz be at kell irnod.

Új hozzászólás Aktív témák