Você está na página 1de 16

12/11/2012

Orientao a Objetos

PCI

Introduo a orientao a objetos:


Classes; Objetos; Atributos; Mtodos; Construtores; Destrutores;

12/11/2012

Objetivos:
Introduzir os conceitos da programao orientao a objetos; Diferenciar uma classe de um objeto; Principais caractersticas de um objeto;

Objeto:
1. Um objeto uma abstrao de software, base da programao orientada a objetos, e pode representar algo real ou virtual, para utiliza-lo preciso cria-lo na memria do computador. 2. O ato de criao de um objeto chamado de instncia e s pode ser feito atravs de um prottipo (molde) que chamado de classe.

12/11/2012

Criando um objeto:

Comunicao dos objetos:


Os objetos se comunicam por mensagens, que so enviadas atravs dos mtodos de um objeto;
Quando um objeto deseja executar uma ao de outro objeto, ele envia uma mensagem contendo nome do objeto-destino, nome do mtodo a ser executado no objeto-destino e, se necessrio, parmetros que permitem especificar alguma funo especial a ser executada pelo mtodo; Este conceito se assemelha a chamada de uma subrotina em uma linguagem estruturada.

12/11/2012

Utilizando um objeto:

Classe:
Uma classe uma abstrao que define um tipo de objeto (molde), suas caractersticas (atributos) e quais aes ele capaz de realizar (mtodos);
Comparando com a programao estruturada os atributos so como variveis e os mtodos so suas funes.

12/11/2012

Classe:

Atributos:
Os atributos so as caractersticas que definem um objeto, a grosso modo pode-se dizer tambm que os atributos so as variveis de uma classe.

12/11/2012

Atributo:

Mtodos:
Os mtodos so as aes que um objeto pode executar; atravs dos mtodos que os objetos trocam mensagens e se relacionam; Conceitualmente os atributos de um objeto s podem ser alterados atravs dos mtodos de uma classe (encapsulamento), esses mtodos so conhecidos como mtodos acessores.

12/11/2012

Mtodos:

Mtodos acessores:
Os mtodos acessores so os mtodos utilizados para acessar ou alterar os valores de dos atributos de um objeto; Os atributos de um objeto s podem ser acessados e alterados atravs dos mtodos do objeto, ou seja, os atributos devem ser privados e os mtodos acessores pblicos, permitindo assim o controle e possveis intervenes no acesso aos valores do atributo;

12/11/2012

Mtodos Acessores:

Para ficar mais transparente a utilizao de mtodos acessores, a linguagem C# implementa o conceito de propriedades, utilizadas no Delphi, facilitando dessa maneira o acesso aos valores do atributo, mas mantendo o conceito de encapsulamento.

12/11/2012

Propriedades:

A partir da verso 3.0 da linguagem C# foi adicionado as um recurso chamado de propriedades automticas, visando facilitar ainda mais a criao dos mtodos assessores.

12/11/2012

Mtodo construtor:
O mtodo construtor um mtodo especial que sempre chamado quando instanciamos um objeto; Ele criado da mesma maneira que um mtodo comum, a nica diferena que ele deve ter o mesmo nome da classe;

Mtodo Construtor:

10

12/11/2012

Mtodo Destrutor:
Assim como o mtodo construtor, o mtodo destrutor um mtodo especial, que executado quando o objeto tirado da memria do computador, ou seja, quando ele destrudo; O mtodo destrutor deve ter o mesmo nome da classe mas com um til (~) na frente do nome.

Mtodo Destrutor:

11

12/11/2012

Encapsulamento:
O encapsulamento em orientao a objetos o ato de separar a classe em partes de maneira que elas fiquem isoladas garantindo assim uma maior flexibilidade e facilitando a criao de novas implementaes; Tambm garante uma maior coeso e proteo da sua classe, pois ser liberado para o programador que ir trabalhar com a classe apenas o que realmente for necessrio para sua utilizao, deixando detalhes da implementao acessveis apenas ao criador da classe;

Modificadores:
Modificadores so palavras-chave utilizadas para especificar o nvel de acesso e a visibilidade dos elementos declarados, sendo eles: atributos, classes, mtodos, structs, interfaces e enumeradores.

12

12/11/2012

Modificadores de acesso:
Os modificadores de acesso so utilizados para definir em que nvel os elementos podem ser acessados, so eles:

Modificadores de Acesso:

13

12/11/2012

Observaes:
Se nenhum modificador de acesso definido para uma classe o C# define a classe como pblica, j se um atributo ou mtodo no possui um modificador de acesso, o seu padro private; Alm dos modificadores de acesso, existem outros modificadores que definem situaes diferentes no contexto em que so utilizados, so eles:

Outros Modificadores:

14

12/11/2012

Abra um novo projeto chamado TesteClasse

Depois clique com o boto direito no nome do projeto no Solution Explorer e adicione uma nova classe chamada Aluno.cs

15

12/11/2012

Declare os atributos na classe Aluno.cs:


using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace avaliacao { class Aluno {

public string nome; public string telefone;


} }

Volte para o program.cs e digite o cdigo abaixo:


namespace TesteClasses { class Program { static void Main(string[] args) { List<Aluno> alunos = new List<Aluno>(); string sair; do { Aluno aluno = new Aluno(); Console.Write(" Digite o nome:"); aluno.nome = Console.ReadLine(); Console.Write(" Digite o telefone:"); aluno.telefone = Console.ReadLine();
alunos.Add(aluno); Console.WriteLine("Deseja sair?(s/n)>"); sair = Console.ReadLine(); } while (sair.Equals("n")); Console.Clear(); Console.WriteLine("Relao de alunos cadastrados"); Console.WriteLine("-------------------------------------------"); foreach (Aluno aluno in alunos) { Console.WriteLine("Nome:{0} Telefone: {1}", aluno.nome.ToUpper(), aluno.telefone); } Console.ReadKey(); } } }

16

Você também pode gostar