Modifiers

Modificadores

https://docs.microsoft.com/es-es/dotnet/csharp/language-reference/keywords/modifiers


Access Modifiers

public

El acceso no esta restringido.

private

El acceso esta limitado al tipo contenedor.

internal

El acceso esta limitado al ensamblado actual.

protected

El acceso esta limitado a la clase contenedora o a los derivados de la clase contenedora.

protected internal

El acceso esta limitado al ensamblado actual o a los derivados de la clase contenedora.

abstract

Indica que una clase esta diseñada solo para ser una clase base de otras clases.

abstract class ShapesClass
{
    abstract public int Area();
}

async

Indica que el método es asíncrono y se ejecutara en segundo plano, para esto se debe descargar y referenciar la librería por nuget.

public async Task<int> nameFunction(){
    return await number; //Validar este funcionamiento
}

const

Se usa para declarar una campo constante el cual no puede ser modificado.

const int x = 0;

override

Es necesario para ampliar o modificar la implementación abstracta o virtual de un método, propiedad,o evento.

class Square : ShapesClass
{
    int side = 0;

    public override int Area()
    {
        return side * side;
    }
}

partial

Las definiciones de tipo parcial permiten dividir la definición de una clase, estructura o interfaz en varios archivos.

namespace PC
{
    partial class A
    {
        int num = 0;
        void MethodA() { }
        partial void MethodC();
    }
}

namespace PC
{
    partial class A
    {
        void MethodB() { }
        partial void MethodC() { }
    }
}

readonly

Corresponde a un modificador que se puede usar en campos. Las asignaciones a los campos que aparecen en la declaración solo pueden tener lugar en la propia declaración o en un constructor de la misma clase. Solo se puede modificar cuando se crea la clase.

class Age
{
    readonly int _year;
    Age(int year)
    {
        _year = year;
    }

    void ChangeYear()
    {
        _year = 1990;
    }
}

sealed

Cuando se aplica este modificador impide que otras clases hereden de ella.

class X
{
    protected virtual void F() { Console.WriteLine("X.F"); }
    protected virtual void F2() { Console.WriteLine("X.F2"); }
}
class Y : X
{
    sealed protected override void F() { Console.WriteLine("Y.F"); }
    protected override void F2() { Console.WriteLine("Y.F2"); }
}
class Z : Y
{
    // Attempting to override F causes compiler error CS0239.
    // protected override void F() { Console.WriteLine("C.F"); }

    // Overriding F2 is allowed.
    protected override void F2() { Console.WriteLine("Z.F2"); }
}

static

Indica que una variable o método es propio de esa clase mas no de los objetos instanciados. Las clases estáticas y sus miembros se utilizan para crear datos y funciones a las que se puede tener acceso sin crear una instancia de la clase.

Cuando una clase se declara static solo contiene métodos static pero se pueden crear métodos static sin que la clase sea static.

Los métodos static no pueden ser sobrecargados.

virtual

results matching ""

    No results matching ""