• object-oriented-programming-category
    Bemutatás
  • object-oriented-programming-category
    Változók
Osztályok

Osztályok bemutatása, leírása, működésük, szerepük.

Haszontalannak jelölve: 0
Hasznosnak jelölve: 0
Kulcsszavak: wannacode, kurzus, course, objektum orientált programozás, objektum orientált programozás osztályok, object orient programming
Elérhető: Nem érhető el

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();

        
    
Hasonló leckék