Diferencia Entre Método Estático Y No Estático

Diferencia Entre Método Estático Y No Estático
Diferencia Entre Método Estático Y No Estático
Anonim

Método estático vs no estático

Un método es una serie de declaraciones que se llevan a cabo para realizar una tarea específica. Los métodos pueden tomar entradas y producir salidas. Los métodos estáticos y no estáticos son dos tipos de métodos presentes en los lenguajes de programación orientados a objetos. Un método estático es un método que está asociado con una clase. Un método que está asociado con un objeto se denomina método no estático (instancia). En los lenguajes orientados a objetos, los métodos se utilizan como un mecanismo para operar con datos que están almacenados en objetos.

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

En la programación orientada a objetos, el método estático es un método que está asociado con una clase. Por lo tanto, los métodos estáticos no tienen la capacidad de operar en una instancia particular de una clase. Los métodos estáticos se pueden invocar sin utilizar un objeto de la clase que contiene el método estático. A continuación se muestra un ejemplo de cómo definir un método estático en Java. La estática debe usarse al definir un método estático en Java.

public class MyClass {public static void MyStaticMethod () {// código del método estático}

}

El método estático definido anteriormente podría llamarse de la siguiente manera usando el nombre de la clase a la que pertenece.

MyClass. MyStaticMethod ();

Una cosa importante a tener en cuenta es que los métodos estáticos solo pueden acceder a miembros estáticos.

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

Un método no estático o un método de instancia es un método que está asociado con un objeto en una clase. Por lo tanto, los métodos no estáticos se llaman utilizando un objeto de la clase en la que se define el método. Un método no estático puede acceder tanto a miembros no estáticos como a miembros estáticos de una clase. En muchos lenguajes orientados a objetos (como C ++, C #, Java), cuando se llama a un método no estático, el objeto que invoca el método se pasa como un argumento implícito (se llama la referencia 'this'). Entonces, dentro del método, esta palabra clave se puede usar para hacer referencia al objeto que llamó al método. A continuación, se muestra un ejemplo de cómo definir un método de instancia en Java.

public class MyClass {public void MyInstanceMethod () {// código del método de instancia}

}

El método de instancia definido anteriormente podría llamarse de la siguiente manera utilizando un objeto de la clase a la que pertenece.

MyClass objMyClass = new MyClass ();

objMyClass. MyInstanceMethod ();

¿Cuál es la diferencia entre el método estático y no estático?

Los métodos estáticos son métodos que están asociados con una clase, mientras que los métodos no estáticos son métodos que están asociados con objetos de una clase. Primero se debe crear una instancia de una clase para invocar un método no estático, pero los métodos estáticos no tienen este requisito. Pueden invocarse simplemente usando el nombre de la clase que contiene el método estático. Otra diferencia importante es que un método no estático generalmente posee una referencia al objeto que llamó al método y se puede acceder a él usando la palabra clave this dentro del método. Pero esta palabra clave no se puede utilizar en métodos estáticos ya que no están asociados con un objeto en particular.

Recomendado: