1 / 28

Introdução à Progamação Orientada a Objeto (POO)

Introdução à Progamação Orientada a Objeto (POO). Definição Classe Objeto Construtor de Classes Manipulando o objeto Namespace Utilização do namespace Herança Polimorfismo Encapsulamento Propriedades. Definição.

Download Presentation

Introdução à Progamação Orientada a Objeto (POO)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introdução à Progamação Orientada a Objeto (POO)

  2. Definição • Classe • Objeto • Construtor de Classes • Manipulando o objeto • Namespace • Utilização do namespace • Herança • Polimorfismo • Encapsulamento • Propriedades

  3. Definição ”É um paradigma de programaçãobaseadonacomposição e interação entre diversasunidades de software chamadas de objetos” - Wikipédia

  4. Classe • É a representaçãode um conjunto de coisasquepossuemsimilaridades. Exemplo: Conjunto de pessoas, conjunto de açõesdabolsa de valores. • É o conjunto de atributos e métodosquepodemcompor um objeto. • -> variáveisquecontêminformaçõessobre o objeto. • -> conjunto de operaçõesquemodificamosatributos. - Atributos - Métodos

  5. Exemplo • Vamosrepresentarfuncionários de umaempresa. Todososexemplos a seguirsãobaseadosnasintaxe de C#.

  6. Construtor de Classes • Construtor de umaclasse é um método especial queretorna um ponteiroparaumavariável do tipodaclasse. • Normalmenteutilizadoparainicializarosatributosdaclasse.

  7. Definição ParâmetrosPedidos(opcional) Retornaponteiro do tipo ”Funcionario” Modificador de Acesso • publicFuncionario(stringnomeFun, intidadeFun, floatsalarioFun)‏ • { • // inicialização dos atributos • nome = nomeFun; • idade = idadeFun; • salario = salarioFun; • }

  8. Objeto • É a instanciação de umaclasse. • É um item do conjuntorepresentadopelaclasse. • Exemplo: O ”Zezinho” do conjunto de pessoas, a ação ”PETR50” do conjunto de açõesdabolsa de valores. • Utilizando a classeFuncionario e seuconstrutordefinidosanteriormente, podemosinstanciarváriosfuncionáriosdaempresa:

  9. // DeclaraçãodavariáveltipoFuncionario • //emalguma parte do programa • Funcionariojo; • // Inicializaçãodavariável • jo = newFuncionario(”João”, 80, 100f); Semelhanteaomalloc do C Chamada do Construtor

  10. Manipulando um Objeto • Considerando o quefoianteriormentedefinido, poderíamos: • // Mudar o salário do Zé • jo.MudaSalario(120f); • // Quando o Zéfizeraniversário... • jo.idade = jo.idade + 1; O ponto é usadoparaacessaratributos e métodos do Objeto, como as structsem C

  11. Namespace • É um conjunto de código. • Auxilianaorganização do código. • Independe de pastas oudiretórios

  12. Exemplo

  13. Utilização do Namespace Para poderteracessoaocódigoqueestáem um namespace diferente do atual, pode-se acessá-lo daseguintemaneira: Namespace acessado Códigodentro do Namespace System

  14. Outramaneirautiliza a keyword using e emseguida o nome do namespace, antes dadeclaração do namespace atual:

  15. Herança • Tomemosdoisconjuntos: o das ovelhas e o dos cavalos. • Ambos podem ser representadospor classes: Cavalo e Ovelha. • Ambos osconjuntospossuemsimilaridades: quatropatas, pêlo, massa; ambos respiram, dormem, comem, etc... • Isso se deve a ambos osconjuntospertenceremaoconjunto dos mamíferos.

  16. PoderíamosentãocriarumaclassechamadaMamífero. numPatas, massa, etc... andar, comer, dormir, respirar... Assim, Mamíferoseriaclasse base de Ovelha e Cavalo. Tal como, elessão classes herdeiras (filhas, derivadas) de Mamífero, herdandoseusatributos e métodos. Atributos: Métodos:

  17. Exemplo Refere-se a variáveldaClasse

  18. Exemplo IndicaqueCavaloherda de Mamífero Quando o construtor de Cavalo é chamado, ele, porsuavez, chama o Construtordaclasse base (Mamífero)

  19. Exemplo

  20. Polimorfismo • É a capacidade de gerenciarvariadostipos de dados damesma forma. • Isto é feito a partir de um pontoemcomum: classe base.

  21. Exemplo

  22. Encapsulamento Preceito - ”Separar o programaempartes, o maisisoladaspossível. A idéia é tornar o software maisflexível, fácil de modificar e de criar novas implementações.” ( Wikipédia) Exemplo 1: Um usuário de computadornãoprecisasabercomo a memória de vídeo é gerenciadaparapoderjogar Quake. Exemplo 2: Vocênãoprecisasabercomo o método ”Dormir” daclasse ”Mamifero” funciona, parautilizá-lo.

  23. Modificadore de Acesso Servempararestringiroupermitir o acesso a classes, métodos, atributos, propriedades, etc... Em C# existem 5 modificadores de acesso: Private - Apenas membros do mesmo tipo. Protected - Apenasparatiposderivados. Internal - Apenasparacódigo do mesmo assembly. ProtectedInternal - Protected + Internal Public - Qualquercódigo, semrestrição.

  24. Exemplo

  25. Propriedades • Servempara “mascarar” o acessoaosatributosdaclasse; • Utilizadasjunto com modificadores de acesso; • Um dos pilares do Encapsulamento;

  26. Exemplo Indicaqueestapropriedadeperminteapenaspegar o valor do atributo. Indicaqueestapropriedadeperminteapenasatribuir o valor do atributo.

  27. Exemplo

  28. Autor: Andre Petris Esteve Edição e Revisão: Zhenlei Ji

More Related