Minha dúvida é a seguinte: como faço para gerar automáticamente os métodos Get e Set no C#?
Desde Já agradeço a atenção.
Posso estar enganado mas acho que os métodos get e set são gerados automaticamente.
Digita prop
e pressione a tecla “TAB”
No eclipse, temos a opção Generate Get and Set. Há algo similar no Visual Studio?
1º Crie uma variavel privada conforme o exemplo abaixo:
2º Clique com o botão direito do mouse em cima da variavel deseja e selecione REFACTOR >> ENCAPSULATE FILED
3º Digite o nome da Variavel desejada, ele já vem por padrão com um nome com referencia na variavel selecionada
4º Digite OK na tela que mostra as alterações efetuada e está finalizado.
O resultado final é este
[code] private int _teste = 0;
public int Teste
{
get { return _teste; }
set { _teste = value; }
}[/code]
Obrigadaço pela ajuda galera!!!
se não me engano no C# vc não precisa de o get e set explicitamente no seu código , pois quando vc criar um atributos ele sempre é acessado implicitamente pelo get e set, há não ser que você precisa de mudar o "padrão"ou seja realizar alguma implementação no seu get ou set.
Realmente, fazendo istopublic int Teste = 0;
precisa de GET e SET.
Ela é praticamente uma variável pública. Mesmo assim no .NET ela não é uma propriedade e sim um campo. Muda muito para quem usa Reflection. Pois no lugar de aparecer na coleção de Properties aparece na coleção de Fields do objeto.
Mas você definiu a variável como public? Dessa forma é necessário gerar o Get e Set por qual motivo?
Nenhum, o Get e o Set serve apenas para emcapsular a variavel e possibilitar implementação de alguma regra de negócio. Mas como disse no .NET o uso de variáveis publicas não são Propriedades e sim Campos. Mas do ponto de vista de uso é o mesmo.
public int Teste
{
get { return _teste; }
set
{
if(value < 0)
throw new Exception("Favor informar um valor maior que zero");
_teste = value;
}
}
Mas os métodos Get e Set são implícitos tanto no VB qunato no C#?
Isso quer dizer que eles são gerados em tempo de execução?
Não é bem assim.
Se seu get e set não fará nada além de atribuição e leitura, você pode deixar o campo implícito.
Por exemplo, um campo com um getter publico e um set privado:
Se for mais complexo que isso, use a dica que a galera já deu.
Não Marcio, quando se opta por usar um campo no .NET (Uma variavel com PUBLIC) ele se comporta como uma variavel publica, em tempo de execução você acessa a variavel do objeto diretamente assim como é no Java. Podemos tratar ela como uma propriedade sem problemas porque você pode ler e escrever o valor nela sem problema.
Ao se optar pelo uso de Propriedade voce isola a variavel em questão colocando private e manipula ela pelos métodos GET e SET, isto é útil quando antes da leitura e da escrita da variavel você precisar realizar um tratamento ou executar alguma regra de negocio na chamada, não permitindo a manipulação direta do valor da mesma.
Muito obrigado galera, valeu mesmo!!!
[quote=Marcio_Nogueira]Minha dúvida é a seguinte: como faço para gerar automáticamente os métodos Get e Set no C#?
Desde Já agradeço a atenção.[/quote]
Usa versao Pro
Entao vai na variavel:
Botão direito->
Refactorin->
Encapsulate Field->
Done !