• Dodo55
    #154
    Még egy kis érdekesség szintén ezzel a megfigyelő dologgal kapcsolatban a programozásban a getterek és setterek.

    Vannak ugye az osztályok tagváltozói, melyek lehetnek nyilvánosak vagy védettek/privátok(e kettő között csak öröklődési szempontból van különbség, kívülről gyakorlatilag ugyanúgy viselkednek). A getterek és setterek olyan tagfüggvények, melyek védett/privát változókat tesznek elérhetővé nyilvánosan közvetítőként beépülve. Legnagyobb előnyük az értékvalidáció lehetősége a setterek esetén, viszont ne felejtsük a gettereket sem:
    (C# most, mert abban nagyon szépen van megoldva :))

    class osztaly
    private int tagv=0;
    public int Tagv{
    get {return this.tagv;}
    }


    Ez így csak simán visszaadja a privát változó értékét, egy nagyon egyszerű példa, de semmi nem tiltja, hogy ott más is történjen:

    class osztaly
    private int tagv=0;
    public int Tagv{
    get {this.tagv++;return this.tagv;}
    }


    Ha fogjuk és kipróbáljuk ezt:

    osztaly peldany=new osztaly();
    while(true){
    System.Console.WriteLine(peldany.Tagv);
    }


    1
    2
    3
    4
    5
    6
    7
    8.... :)