TÉCNICAS DE ORIENTAÇÃO A OBJETOS

Tamanho: px
Começar a partir da página:

Download "TÉCNICAS DE ORIENTAÇÃO A OBJETOS"

Transcrição

1 TÉCNICAS DE ORIENTAÇÃO A OBJETOS APLICAÇÃO EM: C# E JAVA

2 Sumário INTRODUÇÃO... 4 PARADIGMAS DE PROGRAMAÇÃO... 5 PROGRAMAÇÃO PROCEDURAL... 5 PROGRAMAÇÃO ESTRUTURADA... 5 PROGRAMAÇÃO ORIENTADA A OBJETOS... 5 CLASSE... 6 O QUE É UMA CLASSE?... 6 TIPO DE ATRIBUTOS... 6 TIPOS DE MÉTODOS... 6 MODIFICADORES DE ACESSO... 7 MÉTODO CONSTRUTOR... 8 OBJETO... 8 APLICANDO ORIENTAÇÃO A OBJETOS EM LINGUAGEM C# INSTANCIADO E PASSANDO VALORES APLICANDO ORIENTAÇÃO A OBJETOS EM LINGUAGEM JAVA INSTANCIADO E PASSANDO VALORES HERANÇA HERANÇA MÚLTIPLA APLICAÇÃO DE HERANÇA EM C# INSTANCIANDO AS CLASSES APLICAÇÃO EM JAVA ABSTRAÇÃO CLASSES E MÉTODOS ABSTRATOS APLICAÇÃO DE ABSTRAÇÃO EM C# APLICAÇÃO EM JAVA ENCAPSULAMENTO ATRIBUTOS PRIVADOS MÉTODOS GET E SET APLICAÇÃO DO ENCAPSULAMENTO EM C# MÉTODO DE ENCAPSULAMENTO APLICAÇÃO EM JAVA POLIMORFISMO SOBRESCRITA DE MÉTODOS... 72

3 SOBRECARGA DE MÉTODOS APLICAÇÃO DO POLIMORFISMO EM C# APLICAÇÃO EM JAVA INTERFACES APLICAÇÃO DE INTERFACES EM C# APLICAÇÃO EM JAVA CLASSES E MÉTODOS ESTÁTICOS CLASSE ESTÁTICA MÉTODOS ESTÁTICOS APLICAÇÃO DE CLASSES ESTÁTICAS EM C# APLICAÇÃO EM JAVA RELAÇÃO DE OBJETOS ASSOCIAÇÃO ASSOCIAÇÃO SIMPLES AGREGAÇÃO COMPOSIÇÃO DEPENDÊNCIA GENERALIZAÇÃO APLICAÇÃO DE RELAÇÃO ENTRE OBJETOS EM C# APLICAÇÃO EM JAVA EXCEÇÕES TRY, CATCH E FINALLY APLICAÇÃO DE TRATAMENTO DE EXCEÇÕES EM C# APLICAÇÃO EM JAVA

4 INTRODUÇÃO Nesta apostila vamos conhecer tudo que é necessário para começar a desenvolver softwares orientados a objetos! A seguir você vai conhecer os conceitos teóricos usando diagramas e práticos usando duas ótimas linguagens de programação que são Java e C#.

5 PARADIGMAS DE PROGRAMAÇÃO Para o inicio dos nossos estudos devemos saber o que é um paradigma de programação! E nada mais é do que uma forma de determinar a estrutura e execução de um programa e temos vários tipos de paradigmas vindo do procedural, passando pelo estruturado e chegando ao orientado a objetos. Veja a seguir um pouco mais detalhadamente os paradigmas de programação. PROGRAMAÇÃO PROCEDURAL Este paradigma é antigo porém ainda usado em linguagens como Cobol (usada em aplicações gigantescas) com foco principal em instituições financeiras e pascal (para ensinar lógica de programação). Este paradigma consiste em chamadas de procedimentos, rotinas e sub-rotinas, métodos ou funções que forma uma sequencia de passos a serem executados. PROGRAMAÇÃO ESTRUTURADA A programação estruturada era a mais usada antes de surgir a orientação a objetos. Na programação estruturada o código é sequencial usando decisões e chamadas de repetição criando um código em que o computador interpreta de forma sequencial usado em varias linguagem como, por exemplo, C. PROGRAMAÇÃO ORIENTADA A OBJETOS Agora chegamos em nosso ponto inicial! Vamos conhecer o que é a orientação a objetos. É um paradigma baseado na criação de classes que se possuem características e comportamentos que quando instanciados são criados os objetos! Vamos a seguir aprender detalhadamente esse paradigma de programação!

6 CLASSE O QUE É UMA CLASSE? A primeira que devemos conhecer na orientação a objetos é uma classe. A orientação a objetos basicamente é um conjunto de classes que possuem métodos e atributos e se relacionam. Então uma classe é como um projeto de um objeto pois um objeto sempre é criado através de uma classe. As classes possuem atributos que são suas características e métodos que são suas ações. Nome da Classe Atributos Métodos TIPO DE ATRIBUTOS Os atributos guardam informações para a classe que podem ser usadas pelos métodos para realizar suas tarefas. Esses atributos possuem diversos tipos como pro exemplo: String, int, double, float, ou seja, os tipos de dados que a linguagem que for utilizar possua. Na figura acima temos o atributo nome que é do tipo string que é um conteúdo de texto, porém a idade é do tipo int que recebe apenas números inteiros. TIPOS DE MÉTODOS Como os atributos os métodos também possuem seus tipos, todos os métodos do nosso exemplo são do tipo void e isso significa que ele não tem valor de retorno, ou seja, não seu final ele executa uma ação mais não passa nenhum valor. Porém podemos ter métodos do tipos String que vai retornar uma string(texto) ao final da sua execução. Os métodos retornam o valor do tipo declarado na sua criação se você criar um método do tipo int ele vai retornar um numero inteiro, se for do tipo bool vai retornar um booleano (true/false) e assim por diante.

7 MODIFICADORES DE ACESSO Todos os atributos, e métodos possuem níveis de modificadores de acesso que são public, protected e private. Public (publico) = método ou atributo publico, significa que todas as classes podem acessar e modificar o seu valor no caso de um atributo e executar se for um método. No digrama de classes é representado com o símbolo de soma (+). Protected (protegido) = neste caso os métodos e atributos estão protegidos e só podem ser acessados na classe a qual eles pertencem e nas classes que herdam dela. Ainda vamos aprender mais sobre herança! No digrama de classes é representado com o símbolo de sustenido (jogo da velha ou hashtag) (# ). Private (privado) = como privado os métodos e atributos são acessados apenas na classe onde foram criados. No digrama de classes é representado com o símbolo de subtração (-). Atributo privado Atributo publico Atributo protegido Método publico Método privado Método protegido Por padrão na orientação a objetos os atributos são privados e os métodos públicos porém mais adiante vamos compreender tudo isso melhor. Os método podem receber parâmetros que são valores a ser passados para o método que os utiliza para realizar suas ações. Esse métodos podem ser de vários tipos ex: string, int bool... Parâmetros

8 MÉTODO CONSTRUTOR Um método construtor é executado na criação do objeto e também obriga a passar suas propriedades no momento que é feita a criação do objeto. Uma característica marcante de um método construtor é que sua assinatura (nome) é o mesmo da classe que ele pertence. Método Construtor OBJETO Um objeto é o resultado de uma classe instanciada. Com isso uma classe pode gerar diversos tipos de objetos diferentes onde seus atributos possuem valores diferentes tendo características próprias, porém a estrutura é a mesma mantendo inclusive as mesmas ações já determinadas na classe (métodos). Nome: João Sobrenome: Costa Idade: 50 Peso: 76 Cor: Branco Correr Beber Enxergar Ouvir Nome: Jose Sobrenome: Silva Idade: 30 Peso: 96 Cor: Pardo Correr Beber Enxergar Ouvir

9 Acima podemos conferir um exemplo onde temos uma classe Pessoa e com base nesta classe criamos 2 objetos João e José onde ambos possuem a mesma estrutura porém os valores dos atributos são diferentes criando a representação de duas pessoas diferentes. Agora vamos aplicar nas linguagens de programação Java e C#.

10 APLICANDO ORIENTAÇÃO A OBJETOS EM LINGUAGEM C# Este é um exemplo da classe exibida no capitulo anterior porém os métodos estão sem o conteúdo.

11 PARTE 2 Agora alteramos os atributos para publico para facilitar o exemplo da instanciação que vamos fazer a seguir. Também criamos o conteúdo dos métodos.

12 INSTANCIADO E PASSANDO VALORES Neste exemplo estamos instanciando a classe pessoa e criando o objeto p passamos valores através de seus atributos, chamamos deus métodos.

13 APLICANDO ORIENTAÇÃO A OBJETOS EM LINGUAGEM JAVA

14 INSTANCIADO E PASSANDO VALORES

15 HERANÇA Acredito que você já tenha ouvido falar em herança. E sabe que um filho herda coisas que sei pai deixou. Ai me pergunta. O que isso tem haver com orientação a objetos? A Resposta é: Tudo! A herança é um dos grandes pilares da programação orientada a objetos onde temos a presença de uma superclasse (também conhecida como classe pai ou classe mãe) que passa atributos e métodos para a classe de nível mais baixo a subclasse (também conhecida como classe filha). Com isso temos a reutilização de código porque com a herança podemos criar um método que faça uma determinada ação e todas as classes que herdar da classe onde ele foi criado já recebe essa função. Na imagem acima podemos notar que a classe pessoas possui os métodos e atributos necessários para criar um objeto pessoa, porém necessitamos ser mais específicos e em nosso sistema teremos a classe funcionário que é uma pessoa, porém como funcionário tem algumas funções a mais, com isso a classe funcionário herda os métodos e atributos da classe pessoa e implementa seus próprio métodos e atributos. E da mesma forma funciona as classes Fornecedor e Cliente. Abaixo veja mais um tipo de herança onde teremos a classe gerente que nada mais é do que um funcionário que possui mais funções, portanto ele pode fazer tudo o que uma pessoa e um funcionário somando ainda as suas funções especificas. Lembrando que muitas pessoas confunde isso com herança múltipla, mas não é herança múltipla veremos no próximo tópico deste capitulo.

16 HERANÇA MÚLTIPLA Herança múltipla é quando uma classe recebe a herança de duas ou mais classes ao mesmo tempo. A herança múltipla não existe em varias linguagens de programação como, por exemplo, Java e C# que estamos estudando.

17 APLICAÇÃO DE HERANÇA EM C# CLASSE FUNCIONÁRIO Esta é a classe funcionário com seus métodos implementados e passando a programação a sua herança da classe pessoa. Repare que tivemos de criar um método construtor na classe fornecedor, funcionário, cliente e gerente, porque coma criação de um construtor na classe base as herdeiras também deve ter um para isso criamos um construtor e pegamos o valor da base.

18 CLASSE FORNECEDOR Esta é a classe fornecedor com seus métodos implementados e passando a programação a sua herança da classe pessoa. CLASSE CLIENTE

19 Esta é a classe cliente com seus métodos implementados e passando a programação a sua herança da classe pessoa. GERENTE Esta é a classe Gerente com seus métodos implementados e passando a programação a sua herança da classe funcionário possuindo tudo que contem na classe pessoa e funcionário além de seus próprios métodos e atributos.

20 INSTANCIANDO AS CLASSES FUNCIONÁRIO FORNECEDOR

21 CLIENTE GERENTE

22 APLICAÇÃO EM JAVA CLASSE FUNCIONÁRIO

23 CLASSE FORNECEDOR CLASSE CLIENTE

24 CLASSE GERENTE

25 INSTANCIANDO AS CLASSES CLASSE FUNCIONARIO

26 CLASSE FORNECEDOR CLASSE CLIENTE

27 CLASSE GERENTE

28 ABSTRAÇÃO A abstração é outro pilar importantíssimo da orientação a objetos, devemos sempre pensar do mais abstrato para o mais concreto. Observe a figura abaixo: Note que a classe pessoa já possui todos os métodos e atributos para criar um objeto pessoa, mas isso pode vago por isso definimos a classe funcionário que é uma pessoa, porém já é uma função mais especifica, sendo assim descobrimos que a classe pessoa é a superclasse da classe funcionário que por sua vez é a subclasse de pessoa. Assim como gerente é uma subclasse de funcionário, ou seja, gerente recebe os métodos e atributos de pessoa, funcionário e os seus. CLASSES E MÉTODOS ABSTRATOS. Uma classe quando abstrata fica com o papel de apenas servir de base para outras classes assim não pode ser instanciada e faz o importante papel de passar métodos e atributos que serão herdados pelas suas subclasses. Outra grande vantagem é que ela pode conter métodos abstratos que são métodos que possuem apenas sua assinatura (não implementados) assim obrigando que as classes herdeiras implemente esses métodos.

29 No exemplo acima podemos ver que a classe pessoa virou abstrata porque o texto no nome da classe esta em italico assim como seus métodos que agora são abstratos obrigando as subclasses a implementas esses métodos e não sendo mais implementados na classe pessoa. Acima do nome da classe pessoa note que foi adicionado um estereotipo (stereotype) indicando que é uma classe abstrata isso é opcional usado apenas para facilitar o entendimento do diagrama.

30 APLICAÇÃO DE ABSTRAÇÃO EM C# CRIANDO SUPER CLASSE ABSTRATA Agora nossa super classe é abstrata e seus métodos também são abstratos de forma que são implementados na classe Pessoa e sim nas classes herdeiras.

31 CLASSE FUNCIONÁRIO

32 CLASSE FORNECEDOR

33 CLASSE CLIENTE

34 CLASSE GERENTE

35 APLICAÇÃO EM JAVA CLASSE PESSOA ABSTRATA

36 CLASSE FUNCIONÁRIO

37 CLASSE FORNECEDOR

38 CLASSE CLIENTE

39 CLASSE GERENTE

40 ENCAPSULAMENTO Quando alguém te fala sobre encapsulamento certamente você deve imaginar que é algo dentro de uma capsula! E não esta totalmente errado. Encapsulamento em orientação a objetos consiste em isolar os atributos de uma classe não permitindo o acesso direto de outras partes do sistema permitindo assim que apenas a classe que é dona do atributo possa ter acesso. ATRIBUTOS PRIVADOS Seguindo as boas pratica da programação orientada a objetos os atributos de uma classe sempre devem ser privado assim deixar eles apenas acessíveis a classe onde foi criado. Agora você me pergunta se apenas a classe que o atributo pertence pode ter acesso a ele como vamos passar um valor ou pegar um valor dessa classe! E a resposta é simples. Através de métodos. MÉTODOS GET E SET Como foi dito ao aplicar os atributos como privados precisamos criar métodos para poder alterar o valor ou pegar o valor de um atributo. Os métodos usados são get e set. GET: Pegar o valor contido no atributo. SET: Altera o valor do atributo. Com esses métodos podemos controlar as alterações dos atributos e ainda podendo permitir apenas uma das ações caso necessário. Com essa pratica de tornar os atributos privados e usar os métodos para pegar e passar valor aos atributos temos o encapsulamento. Atributos privados Métodos Get e Set

41

42 APLICAÇÃO DO ENCAPSULAMENTO EM C# MÉTODO DE ENCAPSULAMENTO 1 CLASSE PESSOA

43 CLASSE FUNCIONÁRIO

44 CLASSE FUNCIONÁRIO INSTANCIADA

45 CLASSE FORNECEDOR

46 CLASSE FORNECEDOR INSTANCIADA

47 CLASSE CLIENTE

48 CLASSE CLIENTE INSTANCIADA

49 CLASSE GERENTE CLASSE GERENTE INSTANCIADA

50 MÉTODO DE ENCAPSULAMENTO 2 CLASSE PESSOA

51 CLASSE FUNCIONÁRIO

52 CLASSE FUNCIONÁRIO INSTANCIADA

53 CLASSE FORNECEDOR

54 CLASSE FORNECEDOR INSTANCIADA

55 CLASSE CLIENTE

56 CLASSE CLIENTE INSTANCIADA

57 CLASSE GERENTE CLASSE GERENTE INSTANCIADA

58 MÉTODO DE ENCAPSULAMENTO 3 CLASSE PESSOA CLASSE FUNCIONÁRIO

59 CLASSE FUNCIONÁRIO INSTANCIADA

60 CLASSE FORNECEDOR CLASSE FORNECEDOR INSTANCIADA

61 CLASSE CLIENTE

62 CLASSE CLIENTE INSTANCIADA

63 CLASSE GERENTE CLASSE GERENTE INSTANCIADA

64 APLICAÇÃO EM JAVA CLASSE PESSOA

65 CLASSE FUNCIONÁRIO

66 CLASSE INSTANCIADA

67 CLASSE FORNECEDOR

68 CLASSE INSTANCIADA

69 CLASSE CLIENTE

70 CLASSE INSTANCIADA

71 CLASSE GERENTE CLASSE INSTANCIADA

72 POLIMORFISMO Polimorfismo (Varias formas) é a capacidade de objetos com origens iguais (heranças) realizar ações diferentes. Com o polimorfismo a orientação a objetos permite criar objetos vindos de classes semelhantes terem ações diferentes de acordo com sua necessidade especificas, ou seja, heranças parecidas mais comportamentos diferentes. SOBRESCRITA DE MÉTODOS A sobrescrita de métodos permite em uma classe herdeira reescrever a ação do método que herdou adaptando as suas necessidades. Na sobrescrita o método é mantido com a mesma assinatura porém com alguma diferença na sua execução. Método padrão Método Sobrescrito

73 SOBRECARGA DE MÉTODOS A sobrecarga de métodos consiste em uma determinada classe possuir 2 ou mais métodos com a mesma assinatura(nome) porém cada um com uma ação, tipo e parâmetros diferentes. Essa sobrecarga também se aplica aos métodos construtores. Métodos Sobrecarregados Método Construtor Sobrecarregado

74 APLICAÇÃO DO POLIMORFISMO EM C# SOBRESCRITA DE MÉTODO CLASSE FUNCIONÁRIO CLASSE GERENTE INSTANCIADOS AS CLASSES FUNCIONÁRIO

75 GERENTE

76 SOBRESCRITA DE MÉTODOS CLASSE FUNCIONÁRIO CLASSE INSTANCIADA

77 APLICAÇÃO EM JAVA SOBRESCRITA DE MÉTODO CLASSE FUNCIONÁRIO CLASSE GERENTE INSTANCIADOS AS CLASSES FUNCIONÁRIO

78 GERENTE

79 SOBRESCRITA DE MÉTODOS CLASSE FUNCIONÁRIO CLASSE INSTANCIADA

80 INTERFACES Depois de tudo que passamos você já deve imaginar que já viu tudo sobre orientação a objetos, porém ainda falta muito! O assunto agora é interface e não tem nada ligado à parte gráfica. As interfaces na orientação a objetos é uma forma de garantir que as classes implemente determinados métodos independente de onde esteja herdando. A interface funciona como um contrato onde a classe que o implementa deve por obrigação possuir todos os métodos conditos nela. Ao contrario da herança que varias linguagens não suporta a herança múltipla você pode implementar varias interface em uma mesma classe. Abaixo veja um diagrama de classes implementando a interface IEntradaSaida nas classes funcionário, gerente e cliente. Note que ela começa com I maiúsculo como convenção de nome para identificar que é uma interface inclusive colocando no diagrama o estereotipo <<interface>>.

81 APLICAÇÃO DE INTERFACES EM C# INTERFACE INTERFACE IMPLEMENTADA NA CLASSE FUNCIONÁRIO INTERFACE IMPLEMENTADA NA CLASSE GERENTE INTERFACE IMPLEMENTADA NA CLASSE CLIENTE

82 APLICAÇÃO EM JAVA INTERFACE INTERFACE IMPLEMENTADA NA CLASSE CLIENTE INTERFACE IMPLEMENTADA NA CLASSE GERENTE INTERFACE IMPLEMENTADA NA CLASSE FUNCIONÁRIO

83 CLASSES E MÉTODOS ESTÁTICOS Agora vamos aprender sobre classes e métodos estáticos que facilitam a vida de todo programador criando recursos que podem ser usados sem a necessidade de instancia uma classe e criar um objeto. CLASSE ESTÁTICA A classe estática é uma classe como outra qualquer porém não pode ser instanciada e é utilizada como recipiente para os métodos estáticos. MÉTODOS ESTÁTICOS Os métodos e atributos estáticos podem estar presentes em classes estáticas ou em classes normais, porém para chamar um método ou atributo estático não é necessário instanciar uma classe e sim apenas informa a classe e depois o método/atributo tornando assim uma forma fácil de criar métodos que sempre devem ser usados em diferentes situações.

84 APLICAÇÃO DE CLASSES ESTÁTICAS EM C# CLASSE ESTÁTICA UTILITÁRIO APLICAÇÃO NO PROGRAMA

85 APLICAÇÃO EM JAVA CLASSE UTILITÁRIO APLICAÇÃO NO PROGRAMA

86 RELAÇÃO DE OBJETOS Neste capitulo vamos falar sobre as formas em que as classes se relacionam, já vimos uma parte importante que é a herança e agora vamos ver outros tipos de relação. ASSOCIAÇÃO Toda ligação entre dois objetos é uma associação, porém temos vários tipos de associação como vamos acompanhar abaixo. ASSOCIAÇÃO SIMPLES Mostra que um objeto esta conectado ou contem outro. Todas as associações possuem Nome, navegabilidade, cardinalidade(multiplicidade). Cardinalidade Navegabilidade Nome

87 AGREGAÇÃO É uma associação especial onde nesse relacionamento um objeto contem outro de forma que os dois tem igual importância e podem continuar existindo caso o um seja extinto. COMPOSIÇÃO A relação de composição funciona de forma parecida com a agregação porém um objeto é totalmente dependente do outro sendo que se o principal deixar de existir o outro também e extinto. DEPENDÊNCIA Na dependência um objeto depende das especificações do outro.

88 GENERALIZAÇÃO A generalização basicamente é a herança. EXEMPLO DIAGRAMA COMPLETO

89 APLICAÇÃO DE RELAÇÃO ENTRE OBJETOS EM C# CLASSE PESSOA CLASSE CLIENTE

90 INTERFACE IDADOS CLASSE FILIAL CLASSE BANCO

91 CRIANDO OBJETOS E EXECUTANDO MÉTODOS

92

93 APLICAÇÃO EM JAVA CLASSE PESSOA

94 CLASSE CLIENTE

95 INTERFACE IDADOS CLASSE FILIAL

96 CLASSE BANCO

97 CRIANDO OBJETOS E EXECUTANDO MÉTODOS

98

99 EXCEÇÕES Em todo software existem erros e nós como programadores tentamos ao máximo corrigir essas falhas fazendo com que não apareça para o usuário. Pense na seguinte situação quando você pede em um campo um valor numérico e o usuário digita uma letra é claro que na hora de uma ação como um calculo vai apresentar um erro isso é uma exceção e vai gerar uma mensagem que vai assustar o usuário, por isso vamos fazer um tratamento para essas exceções. TRY, CATCH E FINALLY. Para fazer esse tratamento de exceções usamos o bloco try, catch e finally presentes, por exemplo, nas linguagens Java e C#. Colocamos o código que vai ser monitorado dentro do try, as exceções dentro do catch e no finally a ação final que sempre será executada. Então se o código dentro do try tiver um exceção ativa o catch correspondente porque pode haver um ou mais catch cada um com uma exceção diferente, e se caso o try não conter exceção o catch não é executado já o finally é executado de qualquer forma pode ser usado por exemplo para fechar uma conexão com banco de dados. HIERARQUIA DAS CLASSES DE EXCEÇÃO DO.NET FRAMEWORK Fonte:

100 HIERARQUIA DE HERANÇA DA CLASSE THROWABLE Fonte:

101 APLICAÇÃO DE TRATAMENTO DE EXCEÇÕES EM C# MÉTODO PRINCIPAL DA CLASSE PROGRAM CLASSE ESTÁTICA CALCULO

102 APLICAÇÃO EM JAVA CLASSE CALCULO MÉTODO PRINCIPAL DA CLASSE

Classes e Objetos. Sintaxe de classe em Java

Classes e Objetos. Sintaxe de classe em Java Classes e Objetos Classes e Objetos A Programação Orientada a Objetos (POO) é uma técnica de programação que se baseia na construção de classes e utilização de objetos. Os objetos são formados por dados

Leia mais

Conceitos de Programação Orientada a Objetos

Conceitos de Programação Orientada a Objetos Conceitos de Programação Orientada a Objetos Tatyana Bitencourt Com as técnicas de orientação a objeto, é possível obter resultados considerados impossíveis pensando de maneira estruturada. Como Java não

Leia mais

Unidade: sobrecarga, construtores e herança

Unidade: sobrecarga, construtores e herança Unidade: sobrecarga, construtores e herança 0 Unidade: sobrecarga, construtores e herança Sobrecarga Sobrecarregar (do inglês overload) um método é criar mais métodos com o mesmo nome, porém com assinaturas

Leia mais

COMPORTAMENTOS - Observações

COMPORTAMENTOS - Observações COMPORTAMENTOS - Observações O próprio objeto realiza operações de consulta ou alteração dos valores dos seus atributos Essas operações são definidas em seus métodos Os métodos também são utilizados para

Leia mais

Programação Orientada a Objetos JAVA - NETBEANS

Programação Orientada a Objetos JAVA - NETBEANS Programação Orientada a Objetos JAVA - NETBEANS Agenda Programação Orientada a Objeto (POO) Conceitos sobre POO Pilares da POO Objeto Classe Construtores Troca de Mensagens Pilares da POO Encapsulamento

Leia mais

Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs

Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs Programação Orientada a Objetos Professor: André Luis Meneses Silva andreluis.ms@gmail.com br.geocities.com/programacao2ufs [ Conteúdo ] Objeto Mensagens Classe Encapsulamento Visibilidade Membros de Instância

Leia mais

AULA 2 VISÃO BÁSICA DE CLASSES EM PHP

AULA 2 VISÃO BÁSICA DE CLASSES EM PHP AULA 2 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.

Leia mais

O PARADIGMA ORIENTADO POR OBJETOS

O PARADIGMA ORIENTADO POR OBJETOS O PARADIGMA ORIENTADO POR OBJETOS A idéia básica do paradigma orientado a objetos é imaginar que programas simulam o mundo real: um mundo povoado de objetos. Dessa maneira, linguagens baseadas nos conceitos

Leia mais

[Linguagem de Programação 3] [Aula 01] [Gustavo Yoshio Maruyama]

[Linguagem de Programação 3] [Aula 01] [Gustavo Yoshio Maruyama] [Linguagem de Programação 3] [Aula 01] [Gustavo Yoshio Maruyama] Objetivos Revisar conceitos de Orientação a Objetos Classes Objetos Encapsulamento Herança Sobrescrita de métodos Sobrecarga de métodos

Leia mais

C com introdução a OO

C com introdução a OO ... Centro Integrado de Tecnologia da Informação C com introdução a OO ... Centro Integrado de Tecnologia da Informação Aula 9 Ronald Dener - Instrutor Matheus Soares - Monitor 17 / outubro 17 / outubro

Leia mais

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){

Leia mais

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista

Leia mais

Linguagem de Programação I Apresentação da Disciplina

Linguagem de Programação I Apresentação da Disciplina Linguagem de Programação I Apresentação da Disciplina Apresentação da Disciplina Conteúdo: 1) Orientação a Objetos - Características da OO - Reutilização de código 2) Introdução à Linguagem Java - Histórico

Leia mais

SEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

SEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS SEMINÁRIOS INTEGRADOS EM ADS PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Prof. Dr. Daniel Caetano 2014-1 DISCUSSÃO Visão Geral dos Paradigmas Quais os paradigmas mais comuns? Do que é composto um programa

Leia mais

Introdução ao Java. Prof. Herbert Rausch Fernandes

Introdução ao Java. Prof. Herbert Rausch Fernandes Introdução ao Java Prof. Herbert Rausch Fernandes Orientação a Objetos Programação Orientada por Objetos: é a construção de sistemas de software como uma coleção estruturada de implementações de tipos

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Herança e Polimorfismo Prof. Francisco de Assis S. Santos, Dr. São José, 2015. Herança em POO O conceito de herança torna mais rápido o desenvolvimento de softwares complexos

Leia mais

Programação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes -

Programação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes - Programação Java - Herança, Classes Abstratas e Interfaces - Marco Fagundes mfagundes@tre-pa.gov.br 1 Tópicos Herança Ligação Dinâmica Polimorfismo 2 Herança Herança é um conceito que mapeia as classes

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Introdução Alguns conceitos importantes Orientação a Objetos Alguns conceitos importantes Programação Estruturada X Programação OO Classes Objetos Construtores e Destrutores

Leia mais

Linguagem de Programação II Herança

Linguagem de Programação II Herança Linguagem de Programação II Herança Prof. Alessandro Borges 2 Tópicos Reutilização de classes Delegação Herança Definição Superclasse e Subclasse A palavra reservada extends Método construtor com herança

Leia mais

Modelo do Mundo Real. Abstração. Interpretação

Modelo do Mundo Real. Abstração. Interpretação Modelo do Mundo Real Mundo Real Abstração Interpretação Sistema de Software Modelo Algoritmo Abstração: O modelo precisa capturar apenas as características do mundo real que são importantes para o sistema

Leia mais

Engenharia de Software. Aula 10 Representação dos Conceitos de Orientação a Objetos. Prof. Me. Rogério Ferreira

Engenharia de Software. Aula 10 Representação dos Conceitos de Orientação a Objetos. Prof. Me. Rogério Ferreira Engenharia de Software Aula 10 Representação dos Conceitos de Orientação a Objetos Prof. Me. Rogério Ferreira 2 Roteiro Representação dos Conceitos OO Mensagens Navegabilidade Pacotes Encapsulamento Herança

Leia mais

Linguagens de Programação Aula 12

Linguagens de Programação Aula 12 Linguagens de Programação Aula 12 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Implementando subprogramas 2 Na aula de hoje Suporte para a programação orientada a objetos 3 Roteiro Introdução

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-7 Reutilização de Classes Prof. Esbel Tomás Valero Orellana Até Aqui Introdução a POO e sua implementação em Java Atributos, métodos e encapsulamento dos mesmos Trabalhando

Leia mais

CURSO TÉCNICO DE INFORMÁTICA Módulo C ORIENTAÇÃO À OBJETO. Conceitos

CURSO TÉCNICO DE INFORMÁTICA Módulo C ORIENTAÇÃO À OBJETO. Conceitos CURSO TÉCNICO DE INFORMÁTICA Módulo C ORIENTAÇÃO À OBJETO Conceitos O QUE É UM OBJETO? CLASSE OBJETO OBJETO OBJETO CLASSE OBJETO OBJETO OBJETO ATRIBUTOS MÉTODOS PÚBLICO PRIVADO PROTEGIDO ABSTRATO ESTÁTICO

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Curso Profissional de Gestão e Programação de Sistemas Informáticos Disciplina: Programação e Sistemas de Informação Programação Orientada a Objetos Módulos 9/10/11 POO 2016/2017 História A OO surgiu no

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS II -TÉCNICAS DE OO. Prof. Angelo Augusto Frozza, M.Sc.

PROGRAMAÇÃO ORIENTADA A OBJETOS II -TÉCNICAS DE OO. Prof. Angelo Augusto Frozza, M.Sc. PROGRAMAÇÃO ORIENTADA A OBJETOS II -TÉCNICAS DE OO Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 4. Técnicas de Orientação a Objetos Classes e objetos Herança Métodos Subscritos

Leia mais

Laboratório de programação II

Laboratório de programação II Laboratório de programação II Herança e Polimorfismo Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Herança Mecanismo da Orientação a Objeto que permite criar novas classes aproveitando

Leia mais

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos Encapsulamento e Métodos (Construtores e Estáticos) Sobrecarga de Métodos João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro Conceitos sobre Encapsulamento; Variável this; Métodos Construtores;

Leia mais

Programação Orientada a Objeto (POO)

Programação Orientada a Objeto (POO) Programação Orientada a Objeto (POO) Prof Francesco Artur Perrotti Classes e Objetos Classe pode ser definida como uma categoria de objetos. Usamos as classes para facilitar o entendimento dos objetos

Leia mais

E N C A P S U L A M E N T O P R O F. M E. H É L I O E S P E R I D I Ã O

E N C A P S U L A M E N T O P R O F. M E. H É L I O E S P E R I D I Ã O E N C A P S U L A M E N T O P R O F. M E. H É L I O E S P E R I D I Ã O REVIEW CLASSES E INSTÂNCIAS. REVIEW - O OPERADOR THIS This faz referencia a métodos e atributos da própria classe REVIEW - EXEMPLO

Leia mais

Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces

Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Professora Sheila Cáceres Polimorfismo Polimorfismo Polimorfismo é a característica única de linguagens orientadas

Leia mais

Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces

Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces 0 Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces Classes Abstratas À medida que você sobe na hierarquia de herança,

Leia mais

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; } Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos

Leia mais

Paradigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto

Paradigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto Suporte para Programação Orientada a Objeto Cristiano Lehrer Categoria das Linguagens que Suportam POO Suporte a POO acrescentado a uma linguagem já existente: C++ (também suporta programação procedural

Leia mais

Capítulo 2. Orientação a Objetos

Capítulo 2. Orientação a Objetos Capítulo 2 Orientação a Objetos Princípios da Orientação a Objetos Os princípios da orientação a objetos afetam todo o processo de desenvolvimento de software: Seres humanos pensam em termos de substantivos

Leia mais

Herança. Herança. Herança. Herança. Herança. Programação Orientada a Objetos

Herança. Herança. Herança. Herança. Herança. Programação Orientada a Objetos e Ligação Dinâmica Programação Orientada a Objetos e Polimorfismo A é a contribuição original do paradigma de programação orientado a objetos Fundamentos chave do paradigma OO: Abstração de Dados A herança

Leia mais

Orientação a objetos. Objetos ou Instâncias I

Orientação a objetos. Objetos ou Instâncias I Orientação a objetos Objetos ou Instâncias Métodos ou Mensagens Encapsulamento Classes Variáveis da Classe X Variáveis da Instância Métodos da Classe X Métodos da Instância Relacionamentos Identificando

Leia mais

PROGRAMAÇÃO ORIENTADA A

PROGRAMAÇÃO ORIENTADA A PROGRAMAÇÃO ORIENTADA A OBJETOS II -TÉCNICAS DE OO Prof. Angelo Augusto Frozza, MS M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 4. Técnicas de Orientação a Objetos Classes e objetos Herança Métodos Subscritos

Leia mais

Java para Desktop. Programação Orientada à Objetos 2 JSE

Java para Desktop. Programação Orientada à Objetos 2 JSE Java para Desktop Programação Orientada à Objetos 2 JSE Encapsulamento significa "ocultar informações, ele define que cada objeto contém todos os detalhes de implementação necessários sobre como ele funciona

Leia mais

Programação Java (nível intermediário) 4. Polimorfismo

Programação Java (nível intermediário) 4. Polimorfismo Programação Java (nível intermediário) 4 Polimorfismo Introdução Uma linguagem orientada a objetos nos permite definir novos tipos para variáveis Nós definimos um novo tipo através de uma classe Este tipo

Leia mais

Visibilidade e Encapsulamento

Visibilidade e Encapsulamento Visibilidade e Encapsulamento Professor: Ricardo Luis dos Santos IFSUL 2016 Agenda Pacotes Visibilidade Encapsulamento Hands-On 2 Pacotes Em Java, a visibilidade ou grau de acesso a um determinado atributo

Leia mais

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos Linguagem de Programação II Programação Orientada a Objetos Orientação a Objetos Prof. Alessandro Borges 2 Tópicos Introdução à Programação Orientada a Objetos Conceitos Objetivos Classes e Objetos Atributos

Leia mais

Aula 4 Encapsulamento e Relacionamento Cleverton Hentz

Aula 4 Encapsulamento e Relacionamento Cleverton Hentz Aula 4 Encapsulamento e Relacionamento Cleverton Hentz Sumário } Encapsulamento } Propriedades } Relacionamentos } Composição } Herança 2 O que é encapsulamento? } O que vocês entendem por encapsular?!

Leia mais

Diagrama de Classes. Régis Patrick Silva Simão. Régis Simão Diagrama de Classes 1/42

Diagrama de Classes. Régis Patrick Silva Simão. Régis Simão Diagrama de Classes 1/42 Diagrama de Classes Régis Patrick Silva Simão Régis Simão Diagrama de Classes 1/42 Agenda Introdução Objetos Classes Atributos Operações & Métodos Relacionamentos Relacionamento: Associação Nome de Relacionamento

Leia mais

UNIDADE 5 Aplicação dos Conceitos de Orientação a Objetos

UNIDADE 5 Aplicação dos Conceitos de Orientação a Objetos UNIDADE 5 Aplicação dos Conceitos de Orientação a Objetos Objetivo da Unidade*: Conhecer e aplicar os conceitos mais importantes associados a orientação a objetos. 5.1 Métodos e atributos estáticos Atributos

Leia mais

Prof: Ricardo Quintão Site:

Prof: Ricardo Quintão   Site: Prof: Ricardo Quintão email: rgquintao@gmail.com Site: www.rgquintao.com.br Fundamentos da Programação Orientada a Objetos A Orientação a Objetos é uma tecnologia que enxerga os sistemas como sendo coleção

Leia mais

Programação C# + ASP.NET

Programação C# + ASP.NET Programação C# + ASP.NET Prof. MSc. Daniel Menin Tortelli e-mail: danielmenintortelli@gmail.com Site: http://sites.google.com/site/danielmenintortelli/home 09/11/2015 Programação C# ASP.NET - Prof. MSc.

Leia mais

Programação Orientada a Objetos. Prof. Diemesleno Souza Carvalho

Programação Orientada a Objetos. Prof. Diemesleno Souza Carvalho Programação Orientada a Objetos Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Programação Orientada a Objetos Na aula passada, vimos: Classes Abstratas Programação

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Programação Orientada a Objetos Na aula passada vimos: Introdução a linguagem java; Introdução ao Eclipse IDE; Revisão sobre programação; Programação Orientada a Objetos

Leia mais

C O N S T R U T O R E S E S O B R E C A R G A P R O F. M E. H É L I O E S P E R I D I Ã O

C O N S T R U T O R E S E S O B R E C A R G A P R O F. M E. H É L I O E S P E R I D I Ã O C O N S T R U T O R E S E S O B R E C A R G A P R O F. M E. H É L I O E S P E R I D I Ã O NOME DE CLASSES Toda classe deve começar com uma letra maiúscula. Não pode conter letras não ASCII (caracteres

Leia mais

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; Tudo no mundo real pode ser representado por meio do conceito de "objeto": uma planta, uma mesa, uma pessoa, um sentimento,

Leia mais

Herança Tiago Eugenio de Melo

Herança Tiago Eugenio de Melo Herança Tiago Eugenio de Melo tiago@comunidadesol.org Herança Conceito: Herança é a capacidade de especializar tipos de objetos (classes), de forma que os tipos especializados contenham, além de características

Leia mais

UNIVERSIDADE PAULISTA - UNIP ICET INSTITUTO DE CIÊNCIAS EXATAS E TECNOLÓGIA

UNIVERSIDADE PAULISTA - UNIP ICET INSTITUTO DE CIÊNCIAS EXATAS E TECNOLÓGIA LPOO - Linguagem de Programação Orientada a Objetos Prof. Msc. Célio R. Castelano Página 1 de 7 Curso Ciência da Computação Professor Célio Ricardo Castelano UNIVERSIDADE PAULISTA - UNIP ICET INSTITUTO

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa

Leia mais

Programação Orientada a Objetos Flávio de Oliveira Silva 144

Programação Orientada a Objetos Flávio de Oliveira Silva 144 HERANÇA Herança é a capacidade de uma subclasse de ter acesso as propriedades da superclasse(também chamada classe base) relacionada a esta subclasse. Dessa forma os atributos e métodos de uma classe são

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-4 Construtores e Sobrecarga Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de dados nativos em Java

Leia mais

Programação Orientada a Objetos 2 Flávio de Oliveira Silva, M.Sc.

Programação Orientada a Objetos 2 Flávio de Oliveira Silva, M.Sc. Orientação a Objetos Revisão Conceitos CLASSE CLASSIFICAÇÃO GENERALIZAÇÃO ESPECIALIZAÇÃO HERANÇA INTERFACES POLIMORFISMO SOBRECARGA ENCAPSULAMENTO ABSTRAÇÃO MODULARIZAÇÃO 9 CLASSE Classe é um agrupamento

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato

Leia mais

Interfaces e Classes Abstratas

Interfaces e Classes Abstratas Interfaces e Classes Abstratas José Gustavo de Souza Paiva Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos abstratos

Leia mais

Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento

Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento Professora Sheila Cáceres Variáveis locais Campos são um tipo de variável. Eles: armazenam valores por toda a vida de um objeto; e

Leia mais

15/04/2013. Outro Diagrama de Classes. Primeiro Diagrama de Classes. Diagrama de Classes. Atributos. Eduardo Figueiredo

15/04/2013. Outro Diagrama de Classes. Primeiro Diagrama de Classes. Diagrama de Classes. Atributos. Eduardo Figueiredo DCC / ICEx / UFMG Primeiro Diagrama de Classes Diagrama de Classes Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Professor Aluno matricula Outro Diagrama de Classes Diagrama de Classes Serve de

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Editor Gráfico Vamos usar nosso framework do Motor, com pequenas mudanças (para permitir interação com

Leia mais

Orientação a Objetos Parte I. Introdução a POO (Programação Orientada a Objetos)

Orientação a Objetos Parte I. Introdução a POO (Programação Orientada a Objetos) Orientação a Objetos Parte I Introdução a POO (Programação Orientada a Objetos) Histórico Gerações de Linguagens de Programação Primeira Geração: Linguagem de máquina Segunda Geração: Linguagem de montagem

Leia mais

Herança. Prof. Fernando V. Paulovich 23 de agosto de 2010

Herança. Prof. Fernando V. Paulovich  23 de agosto de 2010 Herança SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação(ICMC) Universidade

Leia mais

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... } Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação

Leia mais

LÓGICA DE PROGRAMAÇÃO (JAVA) CLASSES E OBJETOS. Professor Carlos Muniz

LÓGICA DE PROGRAMAÇÃO (JAVA) CLASSES E OBJETOS. Professor Carlos Muniz LÓGICA DE PROGRAMAÇÃO (JAVA) Classes Uma classe é um tipo definido pelo usuário que contém o molde, a especificação para os objetos, algo mais ou menos como o tipo inteiro contém o molde para as variáveis

Leia mais

Classe Abstrata e Interface

Classe Abstrata e Interface Orientação a objetos com Java Classe Abstrata e Interface Byron Leite byron.leite@gmail.com 1 Herança Agenda Geral Parte 04 Encapsulamento Pacotes Modificadores de Acesso private, default, protected, public

Leia mais

Programação C# + ASP.NET

Programação C# + ASP.NET Programação C# + ASP.NET Prof. MSc. Daniel Menin Tortelli e-mail: danielmenintortelli@gmail.com Site: http://sites.google.com/site/danielmenintortelli/home 16/10/2017 Programação C# ASP.NET - Prof. MSc.

Leia mais

Programação Orientada a Objeto (POO)

Programação Orientada a Objeto (POO) Programação Orientada a Objeto (POO) Prof Francesco Artur Perrotti Classes e Objetos Classe pode ser definida como uma categoria de objetos. Usamos as classes para facilitar o entendimento dos objetos

Leia mais

Programação Orientada a Objetos JAVA - NETBEANS

Programação Orientada a Objetos JAVA - NETBEANS Programação Orientada a Objetos JAVA - NETBEANS Agenda Interface Enum Collections Inteface Vamos começar relembrando de herança, polimorfismo e a palavra chave abstract: Inteface Vamos começar olhando

Leia mais

Introdução à Programação Orientada a Objetos. Programação Estruturada vs Programação Orientada a Objetos

Introdução à Programação Orientada a Objetos. Programação Estruturada vs Programação Orientada a Objetos Introdução à Programação Orientada a Objetos O desenvolvimento de software é extremamente amplo. Nesse mercado, existem diversas linguagens de programação, que seguem diferentes paradigmas. Um desses paradigmas

Leia mais

Orientação a objetos Disciplina: Linguagens de Programação. Prof. Alexandre Cassimiro Andreani

Orientação a objetos Disciplina: Linguagens de Programação. Prof. Alexandre Cassimiro Andreani Orientação a objetos Disciplina: Linguagens de Programação Prof. Alexandre Cassimiro Andreani Sumário 1 Objetivo...3 2 Origem da programação orientada a objetos...4 2.1 Exercícios...4 3 Classes e Objetos...6

Leia mais

POO29004 Programação Orientada a Objetos

POO29004 Programação Orientada a Objetos POO29004 Programação Orientada a Objetos Classe abstrata, interface e polimorfismo Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/poo

Leia mais

Linguagem de programação Programação Orientada a objetos

Linguagem de programação Programação Orientada a objetos Instituto Federal de Minas Gerais Campus Ponte Nova Linguagem de programação Programação Orientada a objetos Professor: Saulo Henrique Cabral Silva Paradigma da orientação a objetos Paradigma = forma de

Leia mais

LINGUAGEM DE PROGRAMAÇÃO

LINGUAGEM DE PROGRAMAÇÃO Técnico em Informática LINGUAGEM DE PROGRAMAÇÃO Profª Ana Paula anapaula_mandelli@hotmail.com JAVA Como qualquer linguagem de programação, a linguagem Java tem sua própria estrutura, regras de sintaxe

Leia mais

Unidade: Introdução à POO (Programação Orientada a Objetos)

Unidade: Introdução à POO (Programação Orientada a Objetos) Unidade: Introdução à POO (Programação Orientada a Objetos) 0 Unidade: Introdução à POO (Programação Orientada a Objetos) Paradigmas de Programação Um paradigma de programação fornece (e determina) a visão

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Herança Aula de Hoje Problema Considere uma empresa que tenha tipos de empregados no aplicativo de folha de pagamento Um empregado tem nome,

Leia mais

Vejamos o seguinte exemplo public class Exemplo private int testada = 20; public void testapalavra(int testada) JOptionPane.showMessageDialog(null,"Pa

Vejamos o seguinte exemplo public class Exemplo private int testada = 20; public void testapalavra(int testada) JOptionPane.showMessageDialog(null,Pa Palavra reservada this Em Java podemos ter um parâmetro de um método e um atributo de uma classe com o mesmo nome. Caso façamos uma referência a esta variável, pelo princípio da localidade estaremos referenciando

Leia mais

Conceitos de Linguagens de Programação - Características. Paavo Soeiro

Conceitos de Linguagens de Programação - Características. Paavo Soeiro Conceitos de Linguagens de Programação - Características Paavo Soeiro Motivação Para que possa escolher uma linguagem apropriada ao problema. Melhorar o entendimento da linguagem utilizada. Facilitar o

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-6 Reutilização de Classes Prof. Esbel Tomás Valero Orellana Até Aqui Introdução a POO e sua implementação em Java Atributos, métodos e encapsulamento dos mesmos Trabalhando

Leia mais

Programação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos

Programação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos Programação Orientada a Objetos: Herança Alexandre César Muniz de Oliveira Análise e Projeto Orientados a Objetos A análise orientada a objetos Determina o que o sistema deve fazer: Quais os atores envolvidos?

Leia mais

POO Fundamentos Parte III. Professor Vicente Paulo de Camargo

POO Fundamentos Parte III. Professor Vicente Paulo de Camargo POO Fundamentos Parte III Professor Vicente Paulo de Camargo PROGRAMAÇÃO ORIENTADA A OBJETOS HERANÇA SIMPLES Mecanismo que permite a uma classe, denominada de SUBCLASSE ou CLASSE FILHA, herdar todos os

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel Ambiente de Desenvolvimento Herança É um princípio da Programação Orientada a Objetos que permite que as classes compartilhem atributos e métodos

Leia mais

Fundamentos de Orientação à objetos

Fundamentos de Orientação à objetos Fundamentos de Orientação à objetos Prof. Gustavo Willam Pereira ENG10082 Programação II Créditos: Prof. Clayton Vieira Fraga Filho Objeto Um objeto, como um substantivo, pode ser uma pessoa, local ou

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Paradigmas de Programação Prof. Francisco de Assis S. Santos, Dr. São José, 2014. Paradigmas de Programação: Programação sequencial A solução para o problema se da através

Leia mais

PADRONIZAÇÃO 10. INTERFACES PADRONIZAÇÃO CONTRATOS

PADRONIZAÇÃO 10. INTERFACES PADRONIZAÇÃO CONTRATOS PADRONIZAÇÃO 10. INTERFACES No dia-a-dia lidamos com diversos aparelhos elétricos Diversas empresas fabricam aparelhos elétricos com plugues E se cada empresa decidisse por conta própria o formato dos

Leia mais

Programação Orientada a Objetos. Prof. Diemesleno Souza Carvalho

Programação Orientada a Objetos. Prof. Diemesleno Souza Carvalho Programação Orientada a Objetos Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Programação Orientada a Objetos Na aula passada, vimos: Herança Programação Orientada

Leia mais

A figura abaixo representa uma classe denominada Carteira. Esta classe é composta dos métodos depositar(valor) e retirar(valor) e do atributo saldo.

A figura abaixo representa uma classe denominada Carteira. Esta classe é composta dos métodos depositar(valor) e retirar(valor) e do atributo saldo. 1-Introdução à Programação Orientada a Objetos 1.1. O que é programação orientada a objetos? Programação orientada a objetos é uma metodologia de desenvolvimento de software. Sua principal vantagem é a

Leia mais

AULA 8 Polimorfismo de: coerção, overloading, inclusão e paramétrico Prof. Dr. Fernando Henrique Campos

AULA 8 Polimorfismo de: coerção, overloading, inclusão e paramétrico Prof. Dr. Fernando Henrique Campos Câmpus Santa Helena Curso: Ciência da Computação Disciplina: Programação Orientada a Objetos AULA 8 Polimorfismo de: coerção, overloading, inclusão e paramétrico Prof. Dr. Fernando Henrique Campos Tema

Leia mais

PROGRAMAÇÃO I INTRODUÇÃO À ORIENTAÇÃO A OBJETOS

PROGRAMAÇÃO I INTRODUÇÃO À ORIENTAÇÃO A OBJETOS PROGRAMAÇÃO I INTRODUÇÃO À ORIENTAÇÃO A OBJETOS Prof. Dr. Daniel Caetano 2017-1 Objetivos Compreender os conceitos classe e objeto Compreender a função dos métodos e atributos e o conceito de encapsulamento

Leia mais

Diagrama de Classes. Classes. Relacionamentos. Atributos Métodos. Associação. Generalização Dependência Realização. Agregação Composição

Diagrama de Classes. Classes. Relacionamentos. Atributos Métodos. Associação. Generalização Dependência Realização. Agregação Composição Diagrama de Classes Diagrama de Classes Classes Atributos Métodos Relacionamentos Associação Agregação Composição Generalização Dependência Realização Sobre Classes São o elemento mais importante de qualquer

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Sobrecarga de Métodos e Palavras Reservadas: this, static e final Prof. Francisco de Assis S. Santos, Dr. São José, 2014. Sobrecarga de Métodos Métodos sobrecarregados devem

Leia mais

Introdução. Programação Orientada a Objetos (POO) João Paulo Q. dos Santos

Introdução. Programação Orientada a Objetos (POO) João Paulo Q. dos Santos Introdução Programação Orientada a Objetos (POO) João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Avaliações Continuada: Resolução de Atividades Práticas em Sala; Resolução de Lista de Exercícios; Provas

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Arquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador;

Arquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador; 1 Microprocessador Um microprocessador é um circuito eletrônico capaz de realizar diversas tarefas conforme os comandos específicos. Para isso ele deve ler esses comandos da memória de programa (ROM) e

Leia mais

Universidade Federal de Uberlândia

Universidade Federal de Uberlândia Universidade Federal de Uberlândia Faculdade de Computação Disciplina: POO1 Prof. Fabiano Dorça Classes e métodos abstratos É impossível instanciar objetos a partir de classes abstratas. Classes abstratas

Leia mais

Diagramas de Classes e O Paradigma da Orientação a Objetos usando UML. Prof. Ricardo A. Ramos

Diagramas de Classes e O Paradigma da Orientação a Objetos usando UML. Prof. Ricardo A. Ramos Diagramas de Classes e O Paradigma da Orientação a Objetos usando UML Prof. Ricardo A. Ramos Engenharia de Software II 207. 04/07/207 UML Unified Modeling Language É uma linguagem para especificação, construção,

Leia mais