Liigu peamise sisu juurde

Meetod (funktsioon)

Sissejuhatus

Meetod (funktsioon) on koodilõik, mis täidab kindlat funktsionaalsust. Hea tava kohaselt tegeleb üks meetod ainult ühe konkreetse asjaga. Näiteks:
Kui vaja liita kaks numbrit, tehakse selleks eraldi meetod, mis võtab vastu kaks parameetrit ja tagastab nende summa. Kui vaja lahutada, korrutada või jagada, luuakse igaühe jaoks eraldi meetodid.

Ülesehitus

Meetodi ülesehitus koosneb mitmest osast:

  • Ligipääsu modifikaator (access modifier) - Kirjeldab nähtavuse taset (public, private, protected). On valikuline ehk kui nähtavust ei ole defineeritud, on see package-private.
  • Tagastustüüp (return type) - Kirjeldab meetodi tagastustüüpi ehk mis tüüpi väärtus tulemusena tuleb.
  • Meetodi nimi - Kirjeldav nimi meetodile.
  • Parameetrid - Väärtused, mida meetod saab kasutada. Parameetrid on meetodi sees kohalikud muutujad, millele antakse väärtus meetodi väljakutsumisel.
  • Meetodi sisu (method body) - Kirjeldab meetodi loogikat
hoiatus

NB! Sageli aetakse parameetrid ja argumendid omavahel segamini. Argumendid on väärtused, mis antakse meetodile kaasa selle väljakutsumisel.

Süntaks:

modifier returnType nameOfMethod (parameters) {
// method body
someOtherMethod(arguments);
}

Näited

Kuna nähtavus on public, siis see funktsioon on nähtav kõikjal. Tagastustüüp on int, seega antud funktsioon tagastab täisarvu ehk int-tüüpi väärtuse.

public int add(int a, int b) {
return a + b;
}

Kuna nähtavus on private, siis see funktsioon on nähtav vaid klassis, kus see paikneb. Tagastustüüp on String, seega antud funktsioon tagastab sõne ehk String-tüüpi väärtuse.

private static String removeFirst(String word) {
return word.substring(1);
}

Kuna nähtavus on package-private, siis see funktsioon on nähtav vaid selle paketi klassidele, kus see paikneb. Tagastustüüp on List<Double>, seega antud funktsioon tagastab loendi ujukomaarvudest ehk List<Double>-tüüpi väärtuse.

List<Double> turnIntoList(double a, double b) {
return Arrays.asList(a, b);
}