logo

Statinė funkcija Java

Java programoje statinis raktinį žodį galima naudoti su kintamuoju, konstanta ir funkcijomis. Pagrindinis naudojimo tikslas statinis raktinis žodis yra valdyti atmintį, kad galėtume efektyviai naudoti atmintį. Šiame skyriuje aptarsime statinė funkcija Java.

abėcėlė pagal skaičius

Statinė funkcija

Jei raktinis žodis statinis yra prieš funkcijos pavadinimą, funkcija vadinama a statinė funkcija . Jis dažnai vadinamas a metodas .

Metodas yra kintamųjų ir teiginių grupė, kuri kartu veikia kaip loginis vienetas. Kaip ir laukai, metodai gali turėti modifikatorius (pvz., privačius, viešus arba statinius). Metodai taip pat turi grąžinimo tipą (gali būti negaliojantis, jei metodas nieko nepateikia). Grąžinimo tipas gali būti nuorodos tipas (pvz., objektas arba masyvas). Metodas gali turėti bet kokį parametrų arba argumentų skaičių.

Kai funkcija yra statinis , tai tikrai yra klasės, o ne atskirų klasės objektų dalis. Tai reiškia, kad statinės funkcijos egzistuoja net prieš kuriant bet kokius objektus.

Geriausias statinio metodo pavyzdys yra pagrindinis () metodas.

Statinės funkcijos savybės

  • Jis gali pasiekti tik statinius narius.
  • Jis gali būti vadinamas be egzemplioriaus.
  • Jis nesusietas su objektu.
  • Statinė funkcija negali pasiekti nestatinių duomenų narių.

Statinės funkcijos deklaravimas

Statinės funkcijos deklaravimas Java yra tas pats kaip metodo deklaravimas. Funkcija turi dviejų dalių funkciją prototipas ir kūnas funkcijos.

Statinė funkcija Java

The funkcijos prototipas yra funkcijos parašas, apimantis funkcijos pavadinimą, grąžinimo tipą, prieigos specifikaciją ir parametrų sąrašą. The veikiantis kūnas yra logika arba funkcija, kurią reikia atlikti.

Sintaksė:

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

Aukščiau pateiktoje sintaksėje prieigos specifikatorius ir parametrų sąrašas yra neprivalomi. Funkcija gali turėti arba neturėti parametrų sąrašo. Pavyzdžiui:

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

Statinės funkcijos iškvietimas

„Java“ negalime iškviesti statinės funkcijos naudodami objektą. Jis iškviečiamas naudojant klasės pavadinimas .

 [class name].[method name] 

Pavyzdžiui:

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

Statinės funkcijos pavyzdys Java

Sukurkime a Java programa iš kurių galime aiškiai suprasti skirtumą tarp statinių ir nestatinių funkcijų.

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

Išvestis:

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

Sukurkime Java programą ir iškvieskime statinį metodą iš kito statinio metodo net nesukūrę klasės objekto.

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

Išvestis:

 Cube of 7 is: 343 

Statinio metodo apribojimai

Yra du pagrindiniai statinio metodo apribojimai. Jie yra:

  • Statinis metodas negali būti naudojamas nestatinis duomenų narius arba tiesiogiai iškvieskite nestatinį metodą.
  • taiir super raktinio žodžio negalima naudoti su statiniu kontekstu.

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

Išvestis:

Statinė funkcija Java