La palabra clave estática es un modificador de no acceso en Java que se utiliza principalmente para la gestión de la memoria. Esta palabra clave estática se aplica principalmente a lo siguiente:
- Variables
- Métodos
- bloques
- Clase anidada
Variable estática es una variable que se declara como estática, lo que significa que se crea una sola copia de la variable y se comparte entre todos los objetos a nivel de clase. El método estático es un método que pertenece a la clase en lugar del objeto de una clase, así como también se puede invocar un método estático sin necesidad de crear una instancia de una clase.
Nota:
- La variable estática obtiene memoria solo una vez en la clase
- Un método estático puede acceder a miembros de datos estáticos y puede cambiar su valor.
Ahora, aquí discutiremos ambos casos con una demostración simple a través de programas java limpios de la siguiente manera:
- Caso 1: Accesibilidad de un método/s estático/s por variable/s estática/s
- Caso 2: Accesibilidad de una variable estática por método estático
Caso 1: Accesibilidad de los métodos estáticos por variables estáticas
Declarando la variable como estática y después de eso, llamamos a esa variable en un método estático para obtener esa variable como salida.
Ejemplo:
Java
// Java Program to demonstrate Accessibility of a static // method/s by static variable/s // Importing input output classes import java.io.*; // Main class public class GFG { // Declaring static variable static int i = 10; // Main method public static void main(String[] args) { // Print and display the static variable System.out.println("Static Variable = " + i); } }
Static Variable = 10
Caso 2: Accesibilidad de una variable estática por método estático
Declarar la variable, la array y el método como estáticos donde el método estático accede a la variable estática y la array estática. El método estático se llama sin crear una instancia de la clase.
Ejemplo:
Java
// Java Program to demonstrate Accessibility of an static // variable by static method // Importing input output classes import java.io.*; // Main class class GFG { // Declaring and initializing variables // Making variables static static int i = 10; static int j = 20; // Declaring the static temporary array static int temp[] = { 2, 6, 3, 0, 1, 7 }; // Method 1 // Multiplication of array elements public static void multiply(int n) { for (int k = 0; k < n; k++) { // Multiplying each element of array with i=10 temp[k] = temp[k] * i; } } // Method 2 // To print an array public static void print_Array(int n) { // Display message System.out.print("\nArray = "); // Iteration using for loop to print complete array for (int m = 0; m < n; m++) { // Printing array element System.out.print(temp[m] + " "); } } // Method 3 // Main driver method public static void main(String[] args) { // TODO Auto-generated method stub System.out.print("Static variable : " + i); // Length of static array temp[] int n = temp.length; // Calling the static multiply method multiply(n); // Calling the static Print_Array method print_Array(n); } }
Static variable : 10 Array = 20 60 30 0 10 70
Publicación traducida automáticamente
Artículo escrito por manastole01 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA