30-Modificadores de acceso en C#


La palabra public es un modificador de acceso, que se utiliza para estabelecer el nivel de visibilidad/acceso de las clases, campos metodos y propriedades

c# tiene los seguintes modificadres de acceso:

Modificador Descricion
public El código es accesible para todas las clases.
private El código solo es accesible dentro de la misma clase.
protected Se puede acceder al código dentro de la misma clase, o en una clase que se hereda de esa clase.
internal Solo se puede acceder al código dentro de su propio ensamblado, pero no desde otro ensamblado.



...

Modificador private

Si declara un campo con un modificador de acceso private solo puede ser accedido dentro de la misma clase:

Ejemplo

 class Car
 { 
   private string model = "Ibiza";
 
   static void Main(string[] args)
   { 
     Car myObj = new Car();
     Console.WriteLine(myObj.model);
   } 
 }   
 
 //Salida "Ibiza"

Si intenta acceder fuera de la clase, se producirá un error:

class Car
{
  private string model = "Ibiza";
}

class Program
{
  static void Main(string[] args)
  {
    Car myObj = new Car();
    Console.WriteLine(myObj.model);
  }
}

Salida 'Car.model' is inaccessible due to its protection level The field 'Car.model' is assigned but its value is never used




Modificador públic

Si declara un campo con un modificador de acceso public es accesible para Todas las clases:

ejemplo

class Car
{
  public string model = "Ibiza";
}

class Program
{
  static void Main(string[] args)
  {
    Car myObj = new Car();
    Console.WriteLine(myObj.model);
  }
}

Salida Ibiza


Se acede a los modificadores para controlar la visibilidad de los miembros de la clase

Para lograr la " encapsulación ", que es el proceso de asegurarse de que los datos "confidenciales" estén ocultos para los usuarios.

Esto se hace declarando los campos como private.


Nota Si no se espeficica un modificador de acceso por defecto los miembros de una clase son privados

ejemplo

class Car
{
  string model;  // private
  string year;   // private
}





Publicar un comentario

0 Comentarios