logo

Método estático frente a método de instancia en Java

En Java los métodos definen el comportamiento de clases y objetos. Comprender la diferencia entre métodos estáticos y métodos de instancia es esencial para escribir código limpio y eficiente.

¿Qué es un método estático?

A método estático pertenece a la clase en lugar de a cualquier objeto específico.

  • Se puede llamar sin crear una instancia de la clase.
  • Dado que los métodos estáticos son específicos de cualquier objeto, solo pueden acceder a miembros estáticos (datos y métodos) y no pueden acceder a miembros no estáticos.
Java
import java.io.*; class Geeks {  // static method  public static void greet() {  System.out.println('Hello Geek!');  }  public static void main(String[] args) {  // calling the method directily  greet();  // using the class name  Geeks.greet();  } } 

Producción
Hello Geek! Hello Geek! 

Explicación: El ejemplo anterior muestra un método estático greet() dentro de la clase Geeks. Los métodos estáticos se pueden llamar sin crear un objeto. En el método principal, no estamos creando un objeto de la clase Geek, llamamos al método directamente por el nombre de la clase, que es Geeks, y luego imprimimos el resultado.



¿Qué es un método de instancia?

Un método de instancia pertenece a un objeto.

  • Necesita crear una instancia de la clase para llamar.
  • Puede acceder a variables de instancia, otros métodos de instancia y miembros estáticos de la clase.
  • tener acceso a thisreferencia que apunta al objeto actual.
Java
import java.io.*; class Test {  String n = '';  // Instance method   public void test(String n) {   this.n = n;   } } class Geeks {  public static void main(String[] args) {  // create an instance of the class  Test t = new Test();  // calling an instance method in the class 'Geeks'  t.test('GeeksforGeeks');  System.out.println(t.n);  } } 

Producción
GeeksforGeeks 

Explicación: El ejemplo anterior muestra cómo utilizar un método de instancia en Java. Estamos creando un objeto de la clase Test y llamando al método de prueba para establecer un valor y luego imprimimos el resultado.

Java ¡vaya conceptos!

Diferencia entre método estático y método de instancia

La siguiente tabla enumera los  Principales diferencias entre los métodos estáticos y los métodos de instancia en Java.

Características

método estático

comprobación nula en java

método de instancia

Definición

Creado utilizando la palabra clave estática y recuperado sin crear un objeto.

Requiere que se invoque un objeto de su clase.

Acceso

Acceda solo a variables y métodos estáticos.

comparar en cadena

Puede acceder tanto a miembros estáticos como a miembros de instancia.

this palabra clave

No puedo usar el este palabra clave dentro de métodos estáticos.

Puede utilizar la palabra clave this para hacer referencia al objeto actual.

Anular

No admite polimorfismo en tiempo de ejecución

Admite polimorfismo en tiempo de ejecución

Asignación de memoria

Cargado una vez por clase

Cada objeto tiene su propia copia.

¿Qué es jQuery?


Crear cuestionario