Osztályok
Osztályok bemutatása, leírása, működésük, szerepük.
Osztályok
A bemutóban beszéltünk arról, hogy az Objektum Orientált Programozás lényege, hogy a programkódunk megírása során egy új gondolatmenetet alakítsunk ki, ezáltal tárgyakként (dobozokként) tekintve mindenre, így egy sokkal tisztább kódot írhatunk, sokkal átláthatóbbat és egyszerűbbet is egyaránt.
Ezeket a virtuális tárgyakat (dobozokat) hívjuk Osztályoknak.
Az osztályok parancsa a class, utána az osztály nevével. Osztálynévnek mindig olyan nevet válasszunk amely tükrözi a benne levő tartalmat: ha autóról beszélünk akkor auto, ha polcról akkor polc, ha személyről akkor személy, stb.
class Objektum {
// c, c++, c#
void Objektum()
{
}
// PHP
function __construct()
{
}
}
Az osztály nevével rendelkező függvény (konstruktor) vagy némely programozási nyelvben ez lehet __construct is, kötelező! Enélkül az osztályt csak bizonyos esetekben lehet használni. Ezekről majd a későbbiekben fogunk beszélni.
A konstruktor függvény szerepe, hogy létrehozza az objektumot és beállítsa a kezdeti értékeket az új példányok esetében, esetleg elvégezzen más feladatokat is.
Egy ilyen osztály tartalmazhat változókat (tulajdonságokat):
class Objektum {
string processor = "";
string owner = "";
// c, c++, c#
void Objektum()
{
}
}
De akár függvényeket (feladatokat) is:
class Objektum {
void Objektum()
{
}
void Print()
{
}
}
Akár egyszerre tartalmazhat tulajdonságokat és feladatokat is. Ilyen esetben az osztály elején szokás a változókat létrehozni, majd aztán a függvényeket (feladatokat).
class Objektum {
string processor = "";
string owner = "";
void Objektum()
{
}
void Print()
{
}
}
Ahhoz, hogy egy ilyen osztályt fel tudjunk használni, kell készítsünk belőle egy új másolatot (példányt) amelyet beleteszünk egy változóba, csak ezután érhetjük el a benne levő változókat (tulajdonságokat) vagy függvényeket (feladatokat).
Ezt az alábbi formában tehetjük meg:
variable = new Objektum();
Amikor kiadjuk a parancsot, hogy new Objektum(), a rendszer végre fogja hajtani a konstruktor feladatot, majd vissza kapunk egy példányt az Objektumunkból, amelyet bele teszünk egy változóba, ezáltal azon keresztül elérhető lesz minden elérhető része, ellenkező esetben meg fog szűnni maga a példány.
Amennyiben szeretnénk, hogy az őbjektum létrejöttekor a benne levő tulajdonságoknak már legyen is értéke, a __construct függvénynek kell beállítanunk, hogy a végrehajtásához szükségünk van paraméterekre, melyeket a létrehozásnál majd át tudunk adni.
class Objektum {
string processor = "";
string owner = "";
void Objektum( string processor, string owner )
{
// A kapott értékeket beállítjuk az osztályszintű változóknak
this.processor = processor;
this.owner = owner;
}
}
Beállítottuk, hogy a példány létrejöttéhez szükségünk van két értékre, ezeket át kell adjuk a példány létrehozásánál:
variable = new Objektum( "Intel vagy AMD", "Tulajdonos neve" );
Kezdeti értékeket adhatunk anélkül is, hogy a konstruktor függvénynek átadnánk értékeket, viszont ebben az esetben az összes példányban ugyanazok lesznek az értékek!
class Objektum {
string processor = "";
string owner = "";
void Objektum()
{
// A kapott értékeket beállítjuk az osztályszintű változóknak
this.processor = "Intel vagy AMD";
this.owner = "Tulajdonos neve";
}
}
Amiután létrehoztunk egy új példányt az osztályunkból, a változón keresztül amelybe beletettük, elérhetővé válik az osztály tartalma.
A változókhoz vagy függényekhez való hozzaférés a következő formában történik:
variable = new Objektum();
// Érték adás
variable->processor = "Intel vagy AMD";
// Érték kiolvasás, amit kiírhatunk vagy bele tehetünk egy másik változóba
string processor = variable->processor;
// Függvény meghívása
variable->Print();
Részletek
- Megtekintve: 237
- Haszontalannak jelölve: 0
- Hasznosnak jelölve: 0
- Értékelés: