Kétágú elágazás (if-else)




Download 1.08 Mb.
bet8/51
Sana07.04.2017
Hajmi1.08 Mb.
#3295
1   ...   4   5   6   7   8   9   10   11   ...   51

Metódusok


Egy metódus sok dologban hasonlít a konstruktorhoz, azonban a metódus neve előtt szerepeltetni kell egy típust, amely típusú értéket a metódus visszaad. Egy metódusra úgy is gondolhatunk, mint egy matematikai függvényre, például az y = sin(x) esetén a színusz függvény az x érték színuszát adja értékül az y változónak. Nézzük meg egy átlagos metódust közelebbről:

view plaincopy to clipboardprint?

  1. public String getNév()  

  2. {  

  3.   return this.név;  

  4. }  

A metódus feje távolról hasonlít a példányváltozók deklarálásához, attól "csak" a kerek zárójelek és a metódus törzsét jelentő kapcsos zárójelek különböztetik meg:

  • public String getNév(): a metódus feje, haladjunk a végétől az eleje felé:

    • (): a kerek zárójelek közé átadott paramétereket tudunk felsorolni, jelen esetben nem adunk át paramétert.

    • getNév: a metódus neve, amelyre ugyan azok a szabályok érvényesek, mint a példányváltozókra - leszámítva, hogy egy osztályon belül lehet több azonos nevű metódus, ha eltérő paramétereik vannak.

    • String: a metódus átlal visszaadott érték típusa, ha nem akarunk értéket visszaadni, akkor void szerepelhet ezen a részen.

    • public: az változókhoz hasonlóan a metódus működését és elérését a módosítók befolyásolhatják:

      • abstract: a metódus törzs nélküli, a törzset a leszármazott osztályok tartalmazzák.

      • final: a metódus törzse végleges, a leszármazott osztályban nem lehet azt megváltoztatni felüldefiniálással.

      • native: a metódus törzs nélküli, a törzse nem Java nyelven van megvalósítva.

      • private: a metódust csak az osztályon belül lehet elérni és használni, a leszármazott osztályok sem használhatják.

      • protected: a metódust az azonos csomagban lévő illetve leszármazott osztályok is elérik.

      • public: a metódus nyilvános, bárki számára elérhető és módosítható.

      • static: a metódus csak statikus példányváltozókkal tud dolgozni, s használatához nem kell az osztályt példányosítani.

      • synchronized: a metódus törzsében egyszerre csak egy szál tartózkodhat, erre a környezet ügyel.

      • strictfp: a metódus törzsében a lebegőpontos műveletek IEEE 754 szerint futnak le.

      • Szabályok:

        • Az abstract metódus nem lehet privatestaticfinalnativestrictfp vagy synchronized.

        • Egy abstract metódus csak olyan osztályban lehet deklarálva, amelyik maga is abstract.

        • Az abstract vagy a native metódusnak nem lehet törzse, a kapcsos zárójelek helyett pontosvesszővel kell lezárni.

        • public, a private és a protected közül csak egyet használhatunk. Ha egyiket se adjuk meg, akkor a metódust csak az azonos csomagban lévő osztályok látják, a leszármazottak számára már "láthatatlan".

        • native és a strictfp nem használható együtt.

A metódus törzsét a kapcsos zárójelek között találjuk meg - a példában ez üres, ide kerülnek a Java nyelvű utasítások, amelyek lépésről-lépésre elvégzik a kért műveletet:

view plaincopy to clipboardprint?


  1. Download 1.08 Mb.
1   ...   4   5   6   7   8   9   10   11   ...   51




Download 1.08 Mb.