Új hozzászólás Aktív témák

  • fatal`

    titán

    válasz bundli #7899 üzenetére

    Java:

    default (nem írod ki): Package láthatóság, az osztály csak az adott csomagon belül lesz látható.
    private: Ha nem inner class, akkor ennek semmi értelme (nem is tudom a fordító engedi-e egyáltalán), mert nem tudod használni.
    public: Bárhonnan látszik az osztály.
    final (ez a többi mellé jöhet módosítóként): Az osztályból nem lehet származtatni.

    C# (lehet, hogy pár dolog itt kimarad):

    default (nem írod ki): Ugyanaz, mint az internal.
    internal: Assemblyn belül látszódik az osztály.
    public: Bárhonnan látszik
    sealed (a fentiek mellé jöhet módosítóként: Nem lehet az osztályból származtatni.
    static: Ez igazából csak egy jelzés a fordítónak, ha ez a kulcsszó kint van az "osztály" előtt, akkor a fordító csak statikus adattagokat és függvényeket engedélyez.

    Ezenkívül mindkét nyelvben van abstract kulcsszó. Abstract osztálynak lehetnek absztrakt függvényei, ezeknek nincsen implementációjuk. Absztrakt osztályt nem lehet közvetlenül példányosítani, csak a leszármazottait és a leszármazott osztályokban kötelező megvalósítani az összes absztrakt függvényt (kivéve ha a származtatott osztály is absztrakt, ezesetben egy (vagy több) szinttel lejjebb történik az implementáció).

    Lehet, hogy valami kimaradt, illetve nem pontos, ha így van, akkor a nálam okosabbak majd kijavítanak. :)

Új hozzászólás Aktív témák

Hirdetés