logo

Statická funkce v Javě

V Javě, statický klíčové slovo lze použít s proměnnými, konstantami a funkcemi. Hlavním účelem použití statický klíčové slovo je spravovat paměť, abychom ji mohli efektivně využívat. V této části budeme diskutovat o statická funkce v Javě.

ohraničení pomocí css

Statická funkce

Pokud klíčové slovo statický má předponou před názvem funkce, funkce se nazývá a statická funkce . Často se nazývá a metoda .

Metoda je skupina proměnných a příkazů, které fungují společně jako logická jednotka. Podobně jako pole mohou mít i metody modifikátory (například private, public nebo static). Metody mají také návratový typ (může být neplatný, pokud metoda nevrací nic). Návratovým typem může být referenční typ (například objekt nebo pole). Metoda může mít libovolný počet parametrů nebo argumentů.

Když je funkce statický , je skutečně součástí třídy a ne součástí jednotlivých objektů ve třídě. To znamená, že statické funkce existují ještě před vytvořením jakýchkoli objektů.

Nejlepším příkladem statické metody je hlavní() metoda.

Vlastnosti statické funkce

  • Má přístup pouze ke statickým členům.
  • Lze jej volat bez instance.
  • Není spojen s objektem.
  • Statická funkce nemůže získat přístup k nestatickým datovým členům.

Deklarace statické funkce

Deklarace statické funkce v Jáva je totéž jako deklarace metody. Funkce má dvě části funkce prototyp a tělo funkce.

Statická funkce v Javě

The funkční prototyp obsahuje podpis funkce, který obsahuje název funkce, návratový typ, specifikátor přístupu a seznam parametrů. The funkční tělo obsahuje logiku nebo funkci, která má být provedena.

Syntax:

 [access specifier] static [return type] [function name] (parameter list) { //body of the function } 

Ve výše uvedené syntaxi jsou specifikátor přístupu a seznam parametrů volitelné. Funkce může nebo nemusí mít seznam parametrů. Například:

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

Volání statické funkce

V Javě nemůžeme volat statickou funkci pomocí objektu. Vyvolá se pomocí jméno třídy .

 [class name].[method name] 

Například:

 Math.sqrt(a); //calling the square root function of the Math class 

Příklad statické funkce v Javě

Vytvořme a Java program z čehož jasně pochopíme rozdíl mezi statickými a nestatickými funkcemi.

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(); } } 

Výstup:

 A non-static function is called. The static function is called. 

Vytvořme Java program a zavolejte statickou metodu z jiné statické metody i bez vytvoření objektu třídy.

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(); } } 

Výstup:

 Cube of 7 is: 343 

Omezení statické metody

Pro statickou metodu existují dvě hlavní omezení. Oni jsou:

  • Nelze použít statickou metodu nestatické datové členy nebo zavolejte přímo nestatickou metodu.
  • tentoa super klíčové slovo nelze použít se statickým kontextem.

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); } } 

Výstup:

Statická funkce v Javě