Junior — Middle
¿Cómo distinguir un método estático de un método que se llama en un objeto específico de la clase?
sobes.tech AI
Respuesta de la IA
En C#, un método estático se define con la palabra clave static y se llama en la propia clase, no en una instancia del objeto.
Diferencias:
-
Método estático:
- Se declara con
static. - No tiene acceso a los campos y métodos no estáticos de la clase.
- Se llama mediante el nombre de la clase:
NombreDeLaClase.Metodo().
- Se declara con
-
Método de instancia:
- No lleva
static. - Se llama en un objeto específico:
objeto.Metodo().
- No lleva
Ejemplo:
class MiClase
{
public static void MetodoEstatico()
{
Console.WriteLine("Método estático");
}
public void MetodoDeInstancia()
{
Console.WriteLine("Método de instancia");
}
}
// Llamadas
MiClase.MetodoEstatico(); // llamada a método estático
MiClase obj = new MiClase();
obj.MetodoDeInstancia(); // llamada a método en un objeto
Por lo tanto, la diferencia clave es la forma de llamar y la presencia de la palabra clave static.