I Java er statisk nøkkelord kan brukes med variabel, konstant og funksjoner. Hovedformålet med å bruke statisk nøkkelordet er å administrere minnet slik at vi kan bruke minnet effektivt. I denne delen vil vi diskutere statisk funksjon i Java.
python redusere
Statisk funksjon
Hvis nøkkelordet statisk står foran funksjonsnavnet, kalles funksjonen a statisk funksjon . Det kalles ofte a metode .
En metode er en gruppe av variabler og utsagn som fungerer sammen som en logisk enhet. I likhet med felt kan metoder ha modifikatorer (som private, offentlige eller statiske). Metoder har også en returtype (kan være ugyldig hvis metoden ikke returnerer noe). Returtypen kan være en referansetype (som et objekt eller en matrise). En metode kan ha et hvilket som helst antall parametere eller argumenter.
Når en funksjon er statisk , det er egentlig en del av klassen og ikke en del av de individuelle objektene i klassen. Det betyr at statiske funksjoner eksisterer selv før du oppretter noen objekter.
Det beste eksemplet på en statisk metode er hoved() metode.
Egenskaper for statisk funksjon
- Den har kun tilgang til statiske medlemmer.
- Det kan kalles uten instans.
- Det er ikke knyttet til objektet.
- Ikke-statiske datamedlemmer kan ikke nås av den statiske funksjonen.
Erklære en statisk funksjon
Erklæringen av en statisk funksjon i Java er det samme som deklarasjonen av en metode. Funksjonen har todelt funksjon prototype og kropp av funksjonen.
De funksjonsprototype inneholder funksjonssignaturen som inkluderer funksjonsnavnet, returtypen, tilgangsspesifikasjonen og parameterlisten. De funksjon kroppen inneholder logikken eller funksjonaliteten som skal utføres.
Syntaks:
[access specifier] static [return type] [function name] (parameter list) { //body of the function }
I syntaksen ovenfor er tilgangsspesifikasjonen og parameterlisten valgfrie. En funksjon kan ha eller ikke ha en parameterliste. For eksempel:
public static int sum(int a, int b) { int c=a+b; return c; }
Kaller opp statisk funksjon
I Java kan vi ikke kalle den statiske funksjonen ved å bruke objektet. Det påkalles ved å bruke klassenavn .
[class name].[method name]
For eksempel:
Math.sqrt(a); //calling the square root function of the Math class
Eksempel på statisk funksjon i Java
La oss lage en Java-program hvorfra vi tydelig kan forstå forskjellen mellom statiske og ikke-statiske funksjoner.
StatciFunctionExample.java
class Demo { //non-static function void display() { System.out.println('A non-static function is called.'); } //static function static void show() { System.out.println('The static function is called.'); } } public class StaticFunctionExample { public static void main(String args[]) { //creating an object of the class A Demo obj = new Demo(); //calling a the non-static function by using the object of the class obj.display(); //calling a static function by using the class name Demo.show(); } }
Produksjon:
A non-static function is called. The static function is called.
La oss lage et Java-program og kalle en statisk metode fra en annen statisk metode selv uten å lage et objekt i klassen.
CalculateCube.java
public class CalculateCube { //defining a static method static void cube() { int x=7*7*7; System.out.println('Cube of 7 is: '+x); } public static void main(String args[]) { //calling the static method without using the object of the CalculateCube class cube(); } }
Produksjon:
Cube of 7 is: 343
Restriksjoner for den statiske metoden
Det er to hovedbegrensninger for den statiske metoden. De er:
- Den statiske metoden kan ikke brukes ikke-statisk datamedlemmer eller kall en ikke-statisk metode direkte.
Demo.java
class Demo { int num=100; //non-static variable //static method public static void main(String args[]) { //trying to access non-static data member from static context System.out.println(num); } }
Produksjon: