Escolar Documentos
Profissional Documentos
Cultura Documentos
DE
PROGRAMAO
(MC-3308)
Composio vs Herana
COMPOSIO E HERANA
Composio
Herana
Subtipos
EXEMPLO
CLASSES ABSTRATAS
No pode ser
instanciada
Mtodo abstrato:
sem
implementao
Membros abstratos no
podem ter modificadores
abstract
Para isso, a
classe precisa
ser abstrata
Sem efeito
colateral
Efeito colateral
Conveno
Equivalentes do ponto
de vista do usurio da
classe
ESTENDENDO CLASSES
ESTENDENDO CLASSES
Scala no permite
Proibido mtodos e
atributos com o
mesmo nome na
mesma classe
ATRIBUTOS PARAMTRICOS
ATRIBUTOS PARAMTRICOS
Utilizao de
var e
modificadores
DIAGRAMA DE CLASSES
for(i<-Array.fill[String](width)(name) zip (1 to
width)) yield {i._1 + i._2}
MODIFICADOR OVERRIDE
Por exemplo:
erros de
digitao
POLIMORFISMO
POLIMORFISMO
POLIMORFISMO
POLIMORFISMO
ArrayElement
LineElement
Element
COMPOSIO E REUSO
COMPOSIO E REUSO
Problema?
COMPOSIO E REUSO
ATIVIDADE
Linha
Matriz
LinhaEsp (estendida de Linha, cria uma linha especifica, ex. sequncia com
incio e comprimento)
Obs.:
Os objetos devem ser funcionais, ou seja, qualquer modificao gera um
objeto novo.
Procure utilizar o menor nmero de vars e funes impuras, possvel.
Podem ser criados mais membros alm daqueles especificados.
Quanto menores e em maior nmero forem as funes/mtodos, melhor.
ATIVIDADE
REFERNCIAS