• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Gurzi

A importância das interfaces

6 mensagens neste tópico

Tenho 2 questões relacionadas com estas coisas chatas.

Porque motivo dizem que as interfaces são fundamentais para o Polymorphism ??

2 º Vi um caso em que uma interface era passada como um tipo de um argumento, é isto normal ? faz Sentido ? Se sim, expliquem-me como se uma interface não passa mais de um conjunto de métodos ou fields onde os métodos nem conteúdo tem , só a sua declaração.

Obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não és obrigado a usar Interfaces para o polimorfismo, podes usar classes abstractas, a vantagem dos interfaces é que podes implementar vários em uma classe ao contrario das classes abstractas em que apenas podes usar uma.

Realmente os interfaces não tem mais que declarações de métodos e constantes, e realmente para dizer a verdade é uma coisa que uso muito raramente e na maioria das vezes é as da API. Mas agora que falas nisso vou investigar ;) Por acaso foi uma coisa que também nunca achei ter muita utilidade mas que na realidade parecer ser muito útil.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

há certas funcionalidades em que para as usar é preciso extender uma classe ou implementar uma interface. se a tua classe já está a extender outra, e como o Java não tem herança múltipla, a única alternativa é usar as interfaces.

as interfaces surgiram precisamente para resolver o problema do Java não permitir herança múltipla.

e sim, as interface também podem ser usadas como tipos de dados. aliás, normalmente as classes já implementadas de raíz no Java, tentam ser o mais genéricas possíveis, por isso usam muitas vezes as interfaces para estes efeito, pois as interfaces ainda estão a um nível mais elevado na hierarquia do que as classes abstratas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pois eu por acaso sei disso tudo mas continuo a não ver utilidade nisso lolol ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Pois eu por acaso sei disso tudo mas continuo a não ver utilidade nisso lolol ;)

a utilidade é quando precisas de herança múltipla!

até agora podes nunca ter precisado, mas se algum dia precisares a interfaces serão uma das formas de resolver o problema.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Pois eu por acaso sei disso tudo mas continuo a não ver utilidade nisso lolol

Então nunca te deparaste com herança multipla, o que significa que ou resolves alguns problemas muito comuns de formas mais complicadas ou então nunca te deparaste com eles...

Interfaces é um conceito complicado de fazer perceber. Tive duas anos a cadeira de onde dou POO, no primeiro ano o trabalho prático era fazr o Xenon, garanto-te que é a hierarquia mais simples que existe, uma autêntica árvore. Muito simples. No segundo ano, quando repeti a cadeira, o trabalho era o Fury of the Furries, tenho interfaces por todo o lado, uma hieraquia muito elaborada e não consigo ver como era possível resolver o problema sem a interfaces.

Resumindo, é complicado explicar porque as pessoas estão sempre a pensar que aquilo dá para fazer com classes, e até pode dar, mas é muito mais simples fazer com interfaces. O problema é que enquanto não passarem umas horas a resolver o problema com classes e virem que podem gastar apenas alguns minutos com interfaces não vão perceber a utilidade.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora