Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouAlícia Benevides Bentes Alterado mais de 9 anos atrás
1
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) Filipe Motta (famb) Leopoldo Teixeira (lmt)
2
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
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
4 Modificações na BNF - 1 Definição de programa Programa ::= "{" [ Declaracoes ";" ] Comando "}" Declaracoes ::= DecInterface | DecClasse | Declaracoes “,” Declaracoes
5
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
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
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
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
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
10
11
11
12
12
13
13
14
14 Dúvidas?
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.