[Explained] Hvordan kalle en metode i Java

En metode i Java er ikke annet enn et gjenbrukbart stykke kode som kan kjøres på forespørsel.

Metoder kalles ofte funksjoner, og du vil merke at begge ordene brukes om hverandre.

Viktigheten av å bruke metoder eller funksjoner

Programvareutviklere løser et problem ved å dele det opp i mindre problemer og løse dem for å løse problemet som helhet. Denne ideen førte til det som er kjent som modulær arkitektur. I denne tilnærmingen bryter utviklere ned kode i biter som kan flyttes rundt og kjøres for å løse et større problem.

Metoder er fordelaktige fordi de er brukbare ved forskjellige tilfeller i hele applikasjonen. La oss si at du vil lage en verktøymetode for å fjerne alle unødvendige mellomrom fra en setning. Vil det være fornuftig å skrive logikken hver gang du trenger den et sted i søknaden din?

Eller er det fornuftig å lage en metode én gang og deretter bruke den samme metoden med forskjellige innganger på flere steder i applikasjonen din? Sistnevnte er åpenbart bedre og mer effektiv.

Ikke bare det, ved hjelp av tilgangsmodifikatorer i Java kan du til og med kontrollere hvilke metoder som faktisk kan deles på tvers av applikasjonen og hvilke av dem som ikke er det. Det hjelper også med å gjøre koden din mer lesbar, organisert og strukturert.

  Hvordan være vert for et Amazon Hub-skap/disk?

Typer av metoder i Java

Det er to typer metoder i Java: brukerdefinerte og forhåndsdefinerte metoder. Brukerdefinerte metoder, som navnet antyder, er definert eksplisitt av programmereren. Et eksempel på en brukerdefinert metode kan være:

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

På den annen side eksisterer allerede forhåndsdefinerte metoder eller innebygde metoder som en del av programmeringsspråket Java. Et eksempel på en innebygd metode kan være:

String text = "Hello World";
text.toLowerCase();

Her er toLowerCase en innebygd Java-metode som kan kalles fra hvor som helst i koden din.

Struktur av en metode i Java

La oss ta en titt på den ideelle strukturen til en metode i Java:

[access_modifier] [return_type] method_name(...parameters) {
    // method body
}

Disse komponentene i en metode må spesifiseres i rekkefølge. Metoden kan for eksempel ikke defineres før returtypen og tilsvarende. La oss få vite funksjonene til hver av disse komponentene som utgjør en metode og hvordan de fungerer sammen.

#1. Tilgangsmodifikator

I Java er tilgangsmodifikatorer nøkkelord som definerer synligheten til en metode, klasse, grensesnitt, variabel osv. Teknisk sett er det fem tilgangsmodifikatorer i Java:

  • offentlig: tilgjengelig for alle klasser
  • privat: kun tilgjengelig for klassen den tilhører
  • standard: standard tilgangsmodifikator ligner på den beskyttede modifikatoren der metoden kun er tilgjengelig i samme pakke
  • beskyttet: tilgjengelig innenfor underklasser eller en bestemt pakke
public int sum(a int, b int) {
    return a + b;
}

Her har calc-metoden tilgangsmodifikatoren som offentlig, og dermed vil den være tilgjengelig overalt.

  Hvor kunst og kunstig intelligens kolliderer i en kreativ eksplosjon

#2. Returtype

Returtypen til en funksjon definerer datatypen til dataene som funksjonen skal returnere. Hvis du ikke vil returnere noe fra en funksjon, spesifiser ugyldig returtype i så fall. Returnøkkelordet kan ikke brukes når en void-type er spesifisert. Å spesifisere returtypen er et must for å definere en funksjon.

public void log(String text) {
    System.out.println(text);
}

Metoden ovenfor returnerer ikke noe; det er bare å skrive ut tekst til konsollen. Og dermed den ugyldige returtypen.

#3. Metodenavn

Den identifiserer en metode i en klasse og brukes til å påkalle metoden fra et objekt.

class Print {
    void log(String text) {
        System.out.println(text);
    }
}

Print p = new Print();
p.log("hello world"); // outputs "hello world"

#4. Parametere

Du kan sende argumenter til metoder i henhold til parameterne som er definert i den. For eksempel, hvis det er definert to parametere for en metode, kan du bare sende to argumenter med tilsvarende datatyper. Og du må sende argumentene i den rekkefølgen de er definert.

class Calc {
    int sum(a int, b int) {
        return a + b;
     }
}

Calc cal = new Calc();
cal.sum(3, 7); // will return 10

#5. Kropp

Metodekroppen inkluderer programmeringslogikken som brukes til å returnere et bestemt resultat. Den utfører funksjonen som metoden skal gjøre. Den er innelukket i krøllete bukseseler og blir ofte referert til som en kodeblokk.

class Calc {
    int sum(a int, b int) {
        return a + b;
     }
}

Her er retursetningen inne i de krøllete klammeparentesene kroppen til metodesummen.

  4 beste programvare for videotekstgenerator med flerspråklig støtte

Anropsmetoder i Java

Å påkalle metoder i Java er ganske enkelt. Du kan kalle en metode ved navn fra en forekomst av klassen den bor i.

Statiske metoder kan påkalles uten en objektforekomst av klassen den er til stede i. Ikke-statiske metoder må påkalles strengt fra en forekomst av en klasse, med andre ord fra et objekt.

For statiske metoder ser påkallingen slik ut:

class Math {
    public static int sum(int a, int b) {
        return a + b;
    }
}

public class Main {
    public static void main(String[] args) {
        int add = Math.sum(5, 2);
        System.out.println(add);
    }
}

I koden ovenfor er summetoden i Math-klassen en statisk metode. Og det er grunnen til at du ikke trenger å lage et objekt (forekomst) av Math-klassen, du trenger bare å påkalle metoden fra selve klassen.

På baksiden, for ikke-statiske metoder, ser påkallingen slik ut:

class Math {
    public int sum(int a, int b) {
        return a + b;
    }
}

public class Main {
    public static void main(String[] args) {
        int add = new Math().sum(5, 2);
        System.out.println(add);
    }
}

Her lager du et nytt objekt fra Math-klassen og påkaller deretter metodesummen. Årsaken bak dette er at ikke-statiske metoder ikke blir instansiert før klassen er instansiert.

Det er slik du kan kalle en metode i Java.

Siste ord

Ikke bare i Java, men i alle programmeringsspråk, er metoder en fin måte å organisere koden på og gjenbruke dem på flere steder. Metoder er byggesteinene i modulær og komponentbasert arkitektur.

Hvis du er interessert i Java, kan du lære mer om unntakshåndtering i Java.