Conceitos e Exemplos – Modificadores de Acesso: Estrutura da Linguagem

Olá pessoal, comecei a alguns dias uma série de artigos sobre Programação Orientada a Objetos. Começo também uma série com os principais componentes da Estrutura da Linguagem C#. Neste artigo veremos os conceitos e exemplos com os Modificadores de Acesso. Acompanhem:

A linguagem C# oferece os seguintes tipos de modificadores acesso… Ops, peraí! Mais afinal, o que são modificadores de acesso?

Segundo o site oficial da MSDN esta é a definição: Access modifiers are keywords used to specify the declared accessibility of a member or a type, o que traduzindo seria algo como: Modificadores de acesso são as palavras-chave usadas para especificar a acessibilidade da declaração de um membro ou um tipo.

Ok, já sabemos o que são os modificadores de acesso, agora vamos ver quantos são e para que servem cada:

Lembrando que os modificadores de acesso são aplicáveis a atributos, classes, métodos, Structs, interfaces e enumeradores.

Temos cinco níveis de acessibilidade especificados aos modificadores de acesso. Vejamos cada um, em uma situação hipotética, usando-os em classes:

  • Public – Com este modificador, o acesso é livre em qualquer lugar do programa.
  • Private – Com este modificador, o acesso é permitido somente dentro da classe onde ele foi declarado. Por padrão, é a visibilidade definida para métodos e atributos em uma classe.
  • Protected – Com este modificador, apenas a classe que contém o modificador e os tipos derivados dessa classe tem o acesso.
  • Internal – Com este modificador, o acesso é limitado apenas ao assembly atual.
  • Protected Internal – Com este modificador, o acesso é limitado ao assembly atual e aos tipos derivados da classe que contém o modificador.

Por exemplo, na classe a seguir temos duas situações:


public class Pessoa

{

private int Idade = 21;

public string Nome = string.Empty;

protected double Salario = double.MinValue;

}

Perceba que usamos o modificador private e o public, assim se instanciarmos a classe acima em outra parte de nossa aplicação somente teremos acesso à propriedade Nome, já que a propriedade Idade é do tipo private.

Obs: Quando o modificador é do tipo private, não é obrigatória a declaração dele na classe, já que este tipo é padrão para classes . Para métodos e membros da classe se deixarmos sem declarar, o modificador de acesso padrão será o private.

Perceba que acima que ainda temos o modificador protected (estes três são os mais usados, por isso manterei o foco neles neste artigo). Lembrando que para termos acesso a ele poderemos “chama-lo” dentro de sua classe ou em classes derivadas, como na classe abaixo:


class Funcionario : Pessoa

{

public void DadosFuncionario()

{

Nome = "Wellington";

Salario = 2500.00;

}

}

Perceba que esta classe herda de Pessoa, por isso tem acesso a propriedade Salario.

Espero que com esses conceitos e exemplos tenha ficado claro o uso destes modificadores em suas aplicações!

Assim finalizo o artigo. Muito obrigado a todos!

Um abraço, e até o próximo artigo.

Wellington Balbo de Camargo

wellingtonbalbo@gmail.com

Anúncios

6 comentários sobre “Conceitos e Exemplos – Modificadores de Acesso: Estrutura da Linguagem

  1. Pingback: Base Class Library – Parte 01 – Introdução ao .NET Framework | Programando .NET

  2. “Obs: Quando o modificador é do tipo public, não é obrigatória a declaração dele na classe, como vemos acima.”

    Errado, modificador padrão de classe é Internal, e dos membros da classe é private.

    Curtido por 1 pessoa

  3. Pingback: Tweets that mention Conceitos e Exemplos – Modificadores de Acesso: Estrutura da Linguagem « Programando .NET -- Topsy.com

Expresse sua opinião!

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s