Escolar Documentos
Profissional Documentos
Cultura Documentos
Objetivos do mdulo:
No final deste mdulo os alunos devem ter adquirido conhecimentos, procedimentos e atitudes que lhe
permitam:
Identificar as diferenas entre uma Linguagem Estruturada e uma Linguagem Orientada por Objetos;
O conceito semelhante ao das estruturas nas linguagens estruturadas mas para alm dos campos
que contm os dados tambm inclui as funes que manipulam esses dados e que definem o
comportamento do objeto.
carro.defineMarca(Ford);
carro2.defineMarca(BMW);
4. Conceito de Encapsulamento
A ideia do encapsulamento que os dados de um objeto s devem ser manipulados por funes
desse mesmo objeto. O objetivo proteger os dados evitando erros validando os dados antes de os
armazenar.
Classe Carro
marca
modelo defineMarca
defineModelo
Camio
Peso Mximo Reboque
Se Carro fosse uma classe derivada de Veculo ento Carro herdava as propriedades e os mtodos de
veculos.
Camio
Peso Mximo Reboque
7. Polimorfismo e redefinio
Uma classe pode implementar mtodos existentes noutras classes, mesmo nas classes derivadas. O
compilador ao chamar a funo avalia o objeto e executa a funo adequada de acordo com a classe do
objeto.
Os mtodos podem ser redefinidos dentro da mesma classe desde que tenham parmetros ou um
valor de retorno diferentes.
8. Construtores e destrutores
Um construtor uma funo com o mesmo nome da classe que executada quando o objeto
criado. Esta funo permite definir os valores iniciais do objeto.
O destrutor uma funo com o mesmo nome da classe mas com um ~ (til) no incio do nome. Esta
funo chamada automaticamente quando o objeto destrudo. O objetivo desta funo libertar
recursos que o objeto alocou.
9. Libertar objeto
Quando um objeto j no necessrio pode ser libertado utilizando a palavra reservada null. Basta
igualar o objeto a null para o destruir. Esta instruo, no entanto, no garante que o destrutor seja chamado
pois o C# implementa um coletor de lixo (garbage collector) que faz a gesto da memria garantindo que os
objetos que no so libertados pelo cdigo do programador so libertados pela framework do .Net, evitando
fugas de memria.
(ver exemplo M9_ConstDestrutor_3_OOP)
11. Interfaces
Uma interface permite que duas classes partilhem os mesmos membros desde que estes tenham o
mesmo tipo de retorno e os mesmos parmetros. A interface a definio de quais os mtodos e os
parmetros que devem ser definidos para que a classe possa ser considerada de um determinado tipo ou
classe. Uma interface s tem mtodos, no tem propriedades.
Classe derivada
Propriedades
Mtodos
Bibliografia
http://en.wikipedia.org/wiki/Class_diagram
http://msdn.microsoft.com/en-us/library/79b3xss3(v=vs.90).aspx
C# 5.0 com Visual Studio 2012 Curso Completo