Objektum
A Programozás Wiki wikiből
Az objektum az objektumorientált programozás egyik alapeleme. Az objektumokat általában információt hordozó, és azokkal műveleteket vagy számításokat elvégezni képes egységként fogjuk fel.
A programozási feladat terében egy elemnek, vagy összetevőnek felel meg, míg számítógépes reprezentációja egy összefüggő adatterületként, és a területet kezelő alprogramok halmazaként képzelhető el.
[szerkesztés] Alapvető használat
A tárolt információk bizonyos nyelveknél mezőkön, más néven adattagokon (field), illetve jellemzőkön (property) keresztül érhetők el, vagy módosíthatók. A műveletek is változtathatnak a tárolt információkon. Elnevezésük általában metódus (method), vagy tagfüggvény (member function).
A legtöbb objektum-orientált nyelvben a tagok csak bizonyos korlátozásokkal érhetők el. Lehetnek olyanok, amit csak az osztály tagjai érhetnek el, olyanok, amiket az osztály leszármazottjai használhatnak, és olyanok is, amik a program bármely részéről hivatkozhatók.
Általánosan gyakorlat, hogy az objektum más objektumok címeit tárolja. Ilyenkor a műveleteiben használhatók a többi objektum látható műveletei is, a működést azok használatán keresztül érhetjük el.
[szerkesztés] Létrehozás, felszámolás
Az objektumok a legtöbb programozási nyelvben egy osztály elemeként jelennek meg. Bizonyos nyelvek lehetővé teszik, hogy az objektumok lokális változóként viselkedjenek, más nyelveknél a használni kívánt objektumokat allokálni (létrehozni) kell. Ezt legtöbb esetben a new kulcsszóval tehetjük meg. Az így létrehozott objektumok addig használhatók, amíg felszámolásra nem kerülnek. Ez bizonyos nyelveknél a programozó feladata, másoknál a hulladékgyűjtő algoritmusé.
[szerkesztés] Példák
Példa objektum használatára Java nyelven:
// objektum létrehozása JComboBox combo = new JComboBox(); // művelet használata combo.addItem( "Igen" ); combo.addItem( "Nem" ); // mező módosítása setter művelettel combo.setActionCommand( "combo" ); // másik objektumra hivatkozás beállítása setterrel combo.setPreferredSize( new Dimension( 100, 24 ) ); // hivatkozott objektum címének lekérése getterrel Dimension pref = combo.getPreferredSize();