logo

Funzione statica in Java

In Giava, il statico La parola chiave può essere utilizzata con variabile, costante e funzioni. Lo scopo principale dell'utilizzo di statico La parola chiave è gestire la memoria in modo da poterla utilizzare in modo efficiente. In questa sezione discuteremo di funzione statica in Java.

cos'è un nome utente

Funzione statica

Se la parola chiave statico è preceduto dal nome della funzione, la funzione si chiama a funzione statica . Viene spesso chiamato a metodo .

Un metodo è un gruppo di variabili e istruzioni che funzionano insieme come un'unità logica. Come i campi, i metodi possono avere modificatori (come privato, pubblico o statico). I metodi hanno anche un tipo restituito (può essere void se il metodo non restituisce nulla). Il tipo restituito può essere un tipo di riferimento (come un oggetto o un array). Un metodo può avere un numero qualsiasi di parametri o argomenti.

Quando una funzione è statico , fa realmente parte della classe e non dei singoli oggetti della classe. Significa che le funzioni statiche esistono anche prima della creazione di qualsiasi oggetto.

Il miglior esempio di metodo statico è il principale() metodo.

Proprietà della funzione statica

  • Può accedere solo ai membri statici.
  • Può essere chiamato senza un'istanza.
  • Non è associato all'oggetto.
  • Non è possibile accedere ai membri dati non statici tramite la funzione statica.

Dichiarazione di una funzione statica

La dichiarazione di una funzione statica in Giava equivale alla dichiarazione di un metodo. La funzione è composta da due parti prototipo E corpo della funzione.

Funzione statica in Java

IL prototipo di funzione contiene la firma della funzione che include il nome della funzione, il tipo restituito, l'identificatore di accesso e l'elenco dei parametri. IL corpo della funzione contiene la logica o la funzionalità da eseguire.

Sintassi:

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

Nella sintassi precedente, lo specificatore di accesso e l'elenco dei parametri sono facoltativi. Una funzione può avere o meno un elenco di parametri. Per esempio:

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

Chiamata di funzione statica

In Java non possiamo chiamare la funzione statica utilizzando l'oggetto. Viene invocato utilizzando il comando nome della classe .

 [class name].[method name] 

Per esempio:

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

Esempio di funzione statica in Java

Creiamo un Programma Java da cui possiamo comprendere chiaramente la differenza tra funzioni statiche e non statiche.

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

Produzione:

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

Creiamo un programma Java e chiamiamo un metodo statico da un altro metodo statico anche senza creare un oggetto della classe.

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

Produzione:

 Cube of 7 is: 343 

Restrizioni del metodo statico

Esistono due restrizioni principali per il metodo statico. Sono:

  • Il metodo statico non può essere utilizzato non statico membri dati o chiamare direttamente un metodo non statico.
  • QuestoE super la parola chiave non può essere utilizzata con un contesto statico.

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

Produzione:

Funzione statica in Java