En Java, le statique Le mot-clé peut être utilisé avec des variables, des constantes et des fonctions. L'objectif principal de l'utilisation du statique Le mot-clé est de gérer la mémoire afin que nous puissions l'utiliser efficacement. Dans cette section, nous aborderons les fonction statique en Java.
10 1 millions
Fonction statique
Si le mot clé statique est préfixé avant le nom de la fonction, la fonction est appelée un fonction statique . On l'appelle souvent un méthode .
Une méthode est un groupe de variables et d’instructions qui fonctionnent ensemble comme une unité logique. Comme les champs, les méthodes peuvent avoir des modificateurs (comme privé, public ou statique). Les méthodes ont également un type de retour (peut être nul si la méthode ne renvoie rien). Le type de retour peut être un type de référence (comme un objet ou un tableau). Une méthode peut avoir n'importe quel nombre de paramètres ou d'arguments.
Lorsqu'une fonction est statique , il fait réellement partie de la classe et non des objets individuels de la classe. Cela signifie que les fonctions statiques existent avant même de créer des objets.
Le meilleur exemple de méthode statique est la principal() méthode.
Propriétés de la fonction statique
- Il ne peut accéder qu’aux membres statiques.
- Il peut être appelé sans instance.
- Il n'est pas associé à l'objet.
- Les données membres non statiques ne sont pas accessibles par la fonction statique.
Déclarer une fonction statique
La déclaration d'une fonction statique dans Java est la même chose que la déclaration d'une méthode. La fonction a une fonction en deux parties prototype et corps de la fonction.
Le prototype de fonction contient la signature de fonction qui inclut le nom de la fonction, le type de retour, le spécificateur d'accès et la liste des paramètres. Le corps de fonction contient la logique ou la fonctionnalité à exécuter.
Syntaxe:
[access specifier] static [return type] [function name] (parameter list) { //body of the function }
Dans la syntaxe ci-dessus, le spécificateur d'accès et la liste de paramètres sont facultatifs. Une fonction peut ou non avoir une liste de paramètres. Par exemple:
public static int sum(int a, int b) { int c=a+b; return c; }
Appel d'une fonction statique
En Java, nous ne pouvons pas appeler la fonction statique en utilisant l'objet. Il est invoqué en utilisant le nom du cours .
[class name].[method name]
Par exemple:
Math.sqrt(a); //calling the square root function of the Math class
Exemple de fonction statique en Java
Créons un Programme Java à partir duquel nous pouvons clairement comprendre la différence entre les fonctions statiques et non statiques.
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(); } }
Sortir:
A non-static function is called. The static function is called.
Créons un programme Java et appelons une méthode statique à partir d'une autre méthode statique même sans créer d'objet de la 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(); } }
Sortir:
Cube of 7 is: 343
Restrictions de la méthode statique
Il existe deux restrictions principales pour la méthode statique. Ils sont:
- La méthode statique ne peut pas utiliser non statique données membres ou appelez directement une méthode non statique.
Démo.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); } }
Sortir: