Olvasási módszer , getter ( eng. getter - recipient) - (a programozásban) egy speciális módszer , amely lehetővé teszi adatok beszerzését, amelyekhez való hozzáférés közvetlenül korlátozott. Ez az objektum-orientált programozás egyik technikája, amely segít a rugalmas beágyazási mechanizmus megvalósításában . Egy setterrel párosítva használható tulajdonságok és metódusok rendszerezésére olyan nyelveken , ahol nem támogatottak.
Ebben a példában a rejtett mezőhöz való hozzáférés a ( setter ) és a ( getter ) metódusokonFData keresztül érhető el. SetDataGetData
A PHP nem rendelkezik közvetlen mechanizmussal a getterek használatára, ezért ezek a „magic” __get() metóduson keresztül valósulnak meg
<?php class Foo { private $data ; public function __get ( $name ) { $method = 'get' . ucfirst ( $név ); if ( metódus_létezik ( $this , $method )) { return $this -> $method (); } } public function getData () { return $this -> data ; } }A C# nyelvben a gettereket és a settereket a tulajdonságmechanizmusban használják . A getter a get kulcsszónak, a setter a halmaznak felel meg. A 3-as verzió egy automatikus gettert vezetett be.
class Foo { private int id ; privát karakterláncnév ; _ public int ID { get { return id ; } } public string Név { get { return name ; } set { this . név = érték ; } } public string SomeProperty { get ; készlet ; } }A VB.NET-ben getter létrehozásához meg kell adni az ReadOnly módosítót, ha nem használ settert. A VB 10.0 óta megjelentek az automatikusan implementált tulajdonságok, vagyis nem kell tulajdonság implementációt írni, elég egy deklaráció.
Public Class Foo Private m_Data As Integer 'Privát mező adatokkal A nyilvános tulajdonra vonatkozó üzenet egész számként „Automatikusan megvalósított tulajdonság a VB 10.0 óta Nyilvános csak olvasható tulajdonságadatok egész számként ' Csak olvasható nyilvános tulajdon Get Return m_Data End Get End Tulajdonság végosztályA Pythonban az osztálybeállító és -beállító a @property dekorátor segítségével készíthető, a __ karakterrel kezdődő attribútumok csak az objektumon belül vannak megjelölve elérhetőként.
Foo osztály : def __init__ ( self , data = None ): self . __adat = adatok @property def data ( self ): return self . __adat @adat . setter def data ( self , value ): self . __data = érték