Utilice métodos estáticos en Java

Rashmi Patidar 20 diciembre 2021 18 octubre 2021 Java Java Method
Utilice métodos estáticos en Java

En Java, la palabra clave static invoca un método o una variable sin instanciar la instancia de la clase. No tiene que crear la variable de instancia, y el nombre de la clase se usa directamente para realizar una llamada a las variables y métodos miembros.

Un ejemplo de un método público de este tipo es el método main. La función no necesita ningún objeto para llamar a este comando; por lo tanto, la ejecución del programa comienza desde el main.

Los métodos o variables estáticos pertenecen a una clase en lugar de a su objeto. No es necesario crear la instancia de la clase para llamar a los métodos estáticos. Los miembros estáticos también pueden acceder a las variables estáticas y cambiar el valor de las mismas.

Es menos probable que cambie el código dentro de los métodos estáticos. Además, los métodos estáticos no se pueden anular. Es menos probable que el código cambie, por lo que debe extraerse en la función.

Las ventajas obtenidas de las variables estáticas se enumeran a continuación.

  1. El uso de variables estáticas aumenta el rendimiento del programa. Una vez que se crean, se inyectan directamente cuando sea necesario.
  2. Las llamadas al método se vuelven más fáciles cuando no hay necesidad de agregar una palabra clave new junto con el nombre del método. En cambio, el nombre de la clase se acostumbra a llamar a los métodos.

A continuación se muestra el programa que demuestra el uso de estática en Java.

public class Main {
    public static void main(String[] args) {
       
        College clg = new College();
        clg.display();
        System.out.println(clg.clgName);
        System.out.println(College.getName());
    }
}

class College {
    static String name = "IJK";
    String clgName = "IIT";

    static String getName() {
//        return clgName;
        return name;
    }

    public void display() {
        System.out.println("I am in College");
    }
}

En el bloque de código anterior, el uso del método estático y las variables estáticas están presentes.

El código crea una clase de conductor pública denominada StaticMethodRepresentation y una clase College no pública. La clase universitaria tiene miembros estáticos y no estáticos. La función del controlador intenta crear la instancia de la clase College utilizando la palabra clave new. La nueva palabra clave invoca al constructor público de la clase College.

Como no se define ningún constructor público, la JVM llama al constructor predeterminado en la clase. La instancia de clase se utiliza para invocar la función pública de display de la clase College; que se invoca e imprime la cadena presente.

De manera similar, usando la instancia de esa clase, uno puede acceder a su variable miembro. Pero para acceder a las funciones estáticas, no es necesario crear una nueva instancia de clase. En cambio, el nombre de la clase se puede usar para llamarlo. Por lo tanto, en la última declaración de impresión, el nombre de la clase invoca la función estática.

En la definición de función, hay una línea comentada. La línea intenta acceder al miembro no estático de la clase. Aún así, los miembros estáticos solo pueden acceder a los miembros estáticos; por tanto, no es factible acceder a ellos. Por lo tanto, la función devuelve una cadena estática.

La salida del bloque de código anterior, que muestra el uso de palabras clave estáticas, se muestra a continuación.

I am in College
IIT
IJK
Rashmi Patidar avatar Rashmi Patidar avatar

Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.

LinkedIn

Artículo relacionado - Java Method

  • Comparar ArrayLists en Java
  • Despacho dinámico de métodos en Java
  • Llamar asincrónicamente a un método en Java
  • Filtro de Stream en Java
  • Usando el método System.exit() en Java
  • Ocultación de métodos en Java