U Javi, statički ključna riječ može se koristiti s varijablama, konstantama i funkcijama. Glavna svrha korištenja statički Ključna riječ je upravljanje memorijom kako bismo je mogli učinkovito koristiti. U ovom odjeljku raspravljat ćemo o statička funkcija u Javi.
python rstrip
Statička funkcija
Ako ključna riječ statički ima prefiks ispred naziva funkcije, funkcija se zove a statička funkcija . Često se naziva a metoda .
Metoda je skupina varijabli i izjava koje zajedno funkcioniraju kao logička jedinica. Kao i polja, metode mogu imati modifikatore (poput privatnih, javnih ili statičkih). Metode također imaju vrstu povrata (može biti nevažeća ako metoda ne vraća ništa). Povratni tip može biti referentni tip (kao što je objekt ili niz). Metoda može imati bilo koji broj parametara ili argumenata.
Kada je funkcija statički , to je stvarno dio klase, a ne dio pojedinačnih objekata u klasi. To znači da statičke funkcije postoje i prije stvaranja bilo kojeg objekta.
Najbolji primjer statičke metode je glavni() metoda.
Svojstva statičke funkcije
- Može pristupiti samo statičkim članovima.
- Može se pozvati bez instance.
- Nije povezan s objektom.
- Nestatičnim podatkovnim članovima ne može se pristupiti pomoću statičke funkcije.
Deklariranje statičke funkcije
Deklaracija statičke funkcije u Java je isto što i deklaracija metode. Funkcija ima dva dijela funkcije prototip i tijelo funkcije.
The prototip funkcije sadrži potpis funkcije koji uključuje naziv funkcije, vrstu povrata, specifikator pristupa i popis parametara. The funkcija tijela sadrži logiku ili funkcionalnost koju treba izvesti.
Sintaksa:
[access specifier] static [return type] [function name] (parameter list) { //body of the function }
U gornjoj sintaksi, specifikator pristupa i popis parametara su izborni. Funkcija može ali ne mora imati popis parametara. Na primjer:
public static int sum(int a, int b) { int c=a+b; return c; }
Pozivanje statičke funkcije
U Javi ne možemo pozvati statičku funkciju pomoću objekta. Poziva se korištenjem naziv klase .
[class name].[method name]
Na primjer:
Math.sqrt(a); //calling the square root function of the Math class
Primjer statičke funkcije u Javi
Stvorimo a Java program iz čega jasno možemo razumjeti razliku između statičkih i nestatičkih funkcija.
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(); } }
Izlaz:
A non-static function is called. The static function is called.
Kreirajmo Java program i pozovimo statičku metodu iz druge statičke metode čak i bez stvaranja objekta klase.
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(); } }
Izlaz:
Cube of 7 is: 343
Ograničenja statičke metode
Dva su glavna ograničenja za statičku metodu. Oni su:
- Statička metoda se ne može koristiti nestatičan podatkovne članove ili izravno pozovite nestatičku metodu.
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); } }
Izlaz: