26.08.2014 Views

C# e Orientação a Objetos

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

83 ENCAPSULAMENTO<br />

4 Compile a classe Teste e perceba que ela pode acessar ou modificar os valores dos atributos de<br />

um objeto da classe Funcionario. Execute o teste e observe o console.<br />

5 Aplique a ideia do encapsulamento tornando os atributos definidos na classe Funcionario privados.<br />

1 class Funcionario<br />

2 {<br />

3 private double salario ;<br />

4 private string nome ;<br />

5 }<br />

Código <strong>C#</strong> 7.14: Funcionario.cs<br />

6 Tente compilar novamente a classe Teste. Observe os erros de compilação. Lembre-se que um<br />

atributo privado só pode ser acessado por código escrito na própria classe do atributo.<br />

7 Crie propriedades com nomes padronizados para os atributos definidos na classe Funcionario.<br />

1 class Funcionario<br />

2 {<br />

3 private double salario ;<br />

4 private string nome ;<br />

5<br />

6 public double Salario<br />

7 {<br />

8 get<br />

9 {<br />

10 return this . salario ;<br />

11 }<br />

12 set<br />

13 {<br />

14 this . salario = value ;<br />

15 }<br />

16 }<br />

17<br />

18 public string Nome<br />

19 {<br />

20 get<br />

21 {<br />

22 return this . nome ;<br />

23 }<br />

24 set<br />

25 {<br />

26 this . nome = value ;<br />

27 }<br />

28 }<br />

29 }<br />

Código <strong>C#</strong> 7.15: Funcionario.cs<br />

8 Altere a classe Teste para que ela utilize as propriedades ao invés de manipular os atributos do<br />

objeto da classe Funcionario diretamente.<br />

1 class Teste<br />

2 {<br />

3 static void Main ()<br />

4 {<br />

www.facebook.com/k19treinamentos 83

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!