Inserção dos conceitos de Interface e Classe Abstrata em LOO2 (2006.1) Projeto PLP 2008.1 Alunos: Carlos Eduardo Pontual (ceplc)‏ Fernanda d'Amorim (frsa)‏

Slides:



Advertisements
Apresentações semelhantes
|Introdução a Java para programadores Telis. Jogo de Dados simples O jogo é jogado por dois jogadores. Cada jogador faz sua jogada (lança um dado), e.
Advertisements

Herança, Polimorfismo e Classes Abstratas em Java
Java – Classes Abstratas
Projeto 1.
Design Patterns Interpreter
1 Orientação a Objetos: Herança Alcides Calsavara.
De 17 1 Linguagens de Programação Orientadas a Objetos Pós-Gradução(Lato-Sensu) em Sistemas de Banco de Dados - UFPa Marco Fagundes Aula.
Generalização, Especialização e Conceitos
1 Introdução aos padrões de projeto (GoF) Conceitos preliminares –Mecanismos de herança –Princípio de Substituição de Liskov –Acoplamento concreto x Acoplamento.
Animador para a Linguagem Funcional 2 Carlos Eduardo Lima Lucas Roberto Bechert Schmitz Leonardo Lucena.
Polimorfismo e Classes Abstratas Profa
Alexandre Parra Site: Os Pilares da OO em Java Alexandre Parra Site:
Linguagem de Programação II
Linguagem de Programação II
Interfaces em Java1 Interfaces Prof. Ricardo Linden.
JAVA ENUMS © 2009 by Jorge L. de Souza Leão março de 2009 PEE - COPPE/UFRJ.
UMA ABORDAGEM SOBRE ORIENTAÇÃO A OBJETOS!
Métodos Programação II 1 Métodos de Programação II (Mestrado Integrado em Engenharia de Comunicações) 1º Ano, 2º Semestre Classes Abstractas.
Herança e Polimorfismo
DEFINIÇÃO DE TIPOS – LF3 PLP – Apresentação 2. Equipe Felype Santiago Maria Carolina Paola Rodrigues Rodrigo Cardoso.
Caio Argolo Luiz Daud Jorge Roberto
GEJAVA IV SCJA – Certificação Sun java associado exame cx
INSTITUTO UNIFICADO DE ENSINO SUPERIOR OBJETIVO
Estudo dos Conceitos e Paradigmas de Programação
Paradigmas de Linguagens de Programação BNF e Interpretador da Linguagem Orientada a Objetos Augusto Sampaio Jackson, Jean, Patrícia, Saulo Centro de Informática.
Augusto Sampaio e Paulo Borba Centro de Informática
Linguagem Orientada a Agentes Allan Lima, Bruno Edson, Nancy Lyra.
Paulo Borba Centro de Informática Universidade Federal de Pernambuco Classes Abstratas e Interfaces.
Augusto Sampaio e Paulo Borba Gustavo Pinto Marcelo Queiroz
1 Linguagem Imperativa 2 com Design by Contract Alunos: Bruno Moreno José Elias Queiroga Yuri Malheiros Samara Martins Prof.: Augusto Sampaio.
Aula Prática 1 Monitoria IP/CC (~if669). Verificação Dinâmica de Tipos Métodos de superclasses e subclasses: Uso de métodos de subclasses quando se é.
Aula prática 14 Orientação a Objetos – C++ Parte 2
Classes Abstratas P. O. O. Prof. Ângela e Grace.
Melhorias e Mensagens Amigáveis ao Usuário Centro de Informática Universidade Federal de Pernambuco Bruno Felipe Marco André Paulo Fernando Rodolfo Santos.
POO II JEAN CARLO MENDES
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
1 Marcio de Carvalho Victorino JAVA. 2 Declaração de Atributos [ ] [transient] [volatile] [static] [final] ; controle de acesso –public, package (default),
Interfaces POO Avançado.
Classes Abstratas e Interface
Aula Prática 1 Monitoria IP/CC (~if669). Roteiro 1.Polimorfismo 2.Superclasses Abstratas 3.Dúvidas 4.Exercício.
Introdução Padrões de Projeto
Linguagem Orientada a Agentes Allan Lima, Bruno Edson, Nancy Lyra.
Linguagem orientada a Aspectos 2 Luiz Carlos d’Oleron Tiago Vinícius.
Classes Abstratas e Interfaces GX – Aula05 1.
Paradigmas de Programação –Aula 7 Lab 2 Professores: Eduardo Mantovani Fábio Paula Santos.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Paradigmas da Programação – Semestre 1 – Aula 8 Professor: Eduardo Mantovani )
1 Diego Machado Dias Rodrigo Cézar Luna dos Santos Weslley Silva Torres.
Linguagem II Classes Abstratas Interfaces. Davi Pires Revisão Reuso de código Superclasses e subclasses Composição vs. Herança Construtores.
Parte 3 - Resultados Carlos Eduardo Pontual Fernanda d’Amorim Leopoldo Teixeira Ferramentas para Linhas de Produtos de Aplicações Móveis - FLIP.
JR: Flexible Distributed Programming in an Extended Java Elmário Gomes Dutra Jr. Gustavo Romano.
1 Java: Modificador abstract para classes e métodos Alcides Calsavara.
Adriana Carla Projeto de PLP. 2 Roteiro Objetivos Alterações  Contextualização  BNF / Parser  checaTipo()  avaliar() Demonstração.
Inserção dos conceitos de Interface e Classe Abstrata em LOO2 (2006.1) Projeto PLP Alunos: Carlos Eduardo Pontual (ceplc)‏ Fernanda d'Amorim (frsa)‏
Classes abstratas São classes das quais não se pode instanciar objetos. São classes das quais não se pode instanciar objetos. Seu objetivo é ser herdada.
Emanuella Aleixo ( José Antônio Juliana Mafra Marcela Balbino
Paradigmas de Linguagens de Programação BNF e Interpretador da Linguagem Orientada a Objetos Augusto Sampaio e Paulo Borba Gustavo Pinto Marcelo Queiroz.
Padrão Visitor Paulo Mauricio Gonçalves Jr Rodrigo Teixeira Ramos Paradigmas de Linguagens de Programação Prof. Augusto Sampaio Julho de 2003.
Implementar Listas em Linguagem Funcional II Projeto I - PLP Prof. Augusto Sampaio Equipe :Ana Paula Cavalcanti (apcc2) Clélio Feitosa (cfs) Zildomar C.
Projeto de Arquitetura de Software
Paradigmas de Linguagens de Programação BNF e Interpretador da Linguagem Orientada a Objetos Augusto Sampaio e Paulo Borba Gustavo Pinto Marcelo Queiroz.
1. 2 Programação Orientada a Objetos Prof. Maurício Rodrigues de Morais
Classes Abstratas e Interface. 2 Classe Abstrata  Uma classe abstrata serve apenas como modelo para uma classe concreta (classe que comumente usamos);
Herança e Polimorfismo Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB  Centro de Informática,
Jean Carlo mendes
Novas Funcionalidades p/ LOO 2
Linguagem Orientada a Objetos 2
Projeto de PLP (2006.1) Extensão da Linguagem OO1
Java: Interfaces Alcides Calsavara.
Linguagem Concorrente com Compartilhamento de Variáveis
Transcrição da apresentação:

Inserção dos conceitos de Interface e Classe Abstrata em LOO2 (2006.1) Projeto PLP Alunos: Carlos Eduardo Pontual (ceplc)‏ Fernanda d'Amorim (frsa)‏ Filipe Motta (famb)‏ Leopoldo Teixeira (lmt)‏

2 Linguagem OO2  Estende a LOO1 com os seguintes recursos:  Herança simples entre classes  Redefinição de métodos  Ligação Dinâmica  Expressão InstanceOf  Comando Cast  Superclasse Object  Modificadores de acesso em métodos  Modificador super

3 Proposta do Projeto  Inserção do conceito de Interfaces –Implementação de interfaces (uma ou mais) por classes concretas –Herança simples entre interfaces  Inserção do conceito de Classes Abstratas –Inserção do conceito de métodos abstratos –Classes abstratas devem possuir pelo menos um método abstrato –Herança simples entre classes abstratas

4 Modificações na BNF - 1  Definição de programa Programa ::= "{" [ Declaracoes ";" ] Comando "}" Declaracoes ::= DecInterface | DecClasse | Declaracoes “,” Declaracoes

5 Modificações na BNF - 2  Definição de Interface DecInterface ::= "interface" Id ["extends" Id] "{" ListaAssinaturaMetodo "}" ListaAssinaturaMetodo ::= AssinaturaMetodo | AssinaturaMetodo "," ListaAssinaturaMetodo AssinaturaMetodo ::= modAcesso "proc" Id "(" [ListaDeclaracaoParametro] ")"

6 Modificações na BNF - 3  Definição de Classe Abstrata DecClasse ::= DecClasseAbstrata | DecClasseConcreta DecClasseAbstrata ::= "abstract" "classe" Id ["extends" Id] "{" CorpoClasseAbstrata "}" CorpoClasseAbstrata ::= DecVariavel | DecProcedimento | CorpoClasseAbstrata";" CorpoClasseAbstrata

7 Modificações na BNF - 4  Definição de Classe Concreta DecClasseConcreta ::= "classe" Id ["extends" Id] ["implements" ListaInterface] "{" CorpoClasseConcreta "}" CorpoClasseConcreta ::= DecVariavel | ListaDecProcConcreto | CorpoClasseConcreta ";" CorpoClasseConcreta ListaInterface ::= Id | Id "," ListaInterface

8 Modificações na BNF - 5  Definição de Procedimentos DecProcedimento ::= DecProcConcreto | DecProcAbstrato | DecProcedimento "," DecProcedimento DecProcConcreto ::= AssinaturaMetodo "{" Comando "}" ListaDecProcConcreto ::= DecProcConcreto | DecProcConcreto "," ListaDecProcConcreto DecProcAbstrato ::= "abstract" AssinaturaMetodo

9 Status do Projeto  Inserção do conceito de Interfaces –Implementação de interfaces (uma ou mais) por classes concretas –Herança simples entre interfaces  Inserção do conceito de Classes Abstratas –Inserção do conceito de métodos abstratos –Classes abstratas devem possuir pelo menos um método abstrato –Herança simples entre classes abstratas

10

11

12

13

14 Dúvidas?