Interface, será que eu entendi?

9 respostas
C

OI
é minha primeira pergunta nesse fórum.
Sou Cristian e moro em SP, desenvolvo sistemas basicamente em duas linguagens. Delphi para sistemas Client/Serv desktop e PHP para Web.

Me interessei em Java a 1 mes atras quando li uma matéria falando que o Java é a melhor linguagem de desenvolvimento atualmente, e como na faculdade esse ano vou começar a estudar Java, resolvi começar a estudar por conta própria.

Comprei o Java Como Programar 4, e também puxei alguns tutoriais da Internet.

Eu sempre procuro pesquisar antes de postar alguma dúvida em algum fórum, pesquisei bastante e o que eu não fiquei muito claro em java foi a tal de Interfaces.

Vejam se eu estou certo.

Interface serve para eu colocar os métodos e as classes que implementarem essa interface tem que ter os mesmos métodos, então, a função dela é apenas padronizar os métodos, ou seja, quando eu ver uma classe que implementa essa interface eu sei quais os métodos que estão ou devem ser criados? esse é o objetivo?

Eu li em alguns posts antigos aqui desse fórum, que se vc alterar a Interface não precisa alterar as classes? como isso?
por exemplo, se eu criar mais um método na interface eu não irei ter que criar esses métodos em todas as classes que a implementam?
se eu mudar por exemplo de Maiusculo pra Minusculo um método na interface não irei ter que mudar nas classes também?

Estou certo do que eu disse?

Gostaria muito da ajuda de voces, sei que tem muita gente competente, certificado e que realmente trabalham nessa área.
Agradeço desde já.
Desculpe por qualquer coisa.

Cristian

9 Respostas

aconstantino

Não está certo, uma classe que implementa uma interface deve ter tais métodos e caso tenha feito a alteração a compilação da interface separada pode ser feita mas você estará estragando o resto das classes por isso, nunca compile uma interface e sim a classe que a implementa pois assim você está compilando as duas…

Leandro

Também não sou especialista em Interfaces… mas vou tentar ajudar e assim agente aprende junto… :slight_smile:

Primeiro de tudo, seja bem-vindo e boa sorte em seus estudos… aqui o pessoal é muito gente boa e vai te ajudar com certeza, competência é algo que nem precisa ser mencionado aqui… :smiley:

Então… digamos que a primeira grande utilidade das Interfaces seja realmente de criar um padrão nas classes que a implementam. Você se certifica que terá um funcionamento X de todas as classes que implementarem sua Interface.

Mas com certeza se você mudar algum método dentro da Interface, terá que compilar as classes que a implementam.

Claro que tem mais coisa… tentei dar minha contribuição… vamos ver se os Mestres do Java ouvem nossos apelos e criam um Tutorial sobre Interfaces… :smiley:

J2Alex

Tutorial sobre Interfaces… quem ouvirá as nossas súplicas???

Bani

Eu escrevi um tutorial sobre interfaces esta semana…
Qualquer dia coloco online.

J2Alex

Santa Bani!!!

Elvis.The.Pelvis

Você está no caminho certo. Interfaces representam um contrato que as classes devem seguir. Quando você está trabalhando e precisa executar ações através de uma determinada interface, você dsabe que a referência que você está recebendo tem aqueles métodos implementados, não importando de que classe ou que implementação ele tenha recebido. Imagine uma interface como aqueles botões dos aparelhos eletrônicos (play, pause, ff etc…). Não importa onde você os veja, o fabricante do aparelho implementou essa interface e o play, onde quer que esteja reproduzirá, o pause parará momentaneamente a execução etc…

Bani

Quem quiser ler o meu tutorial, está no seguinte endereço:
http://www.portaljava.com/home/modules.php?name=Sections&op=viewarticle&artid=21

Eu usei uma abordagem um pouco diferente… Ao invés de colocar exemplos simples e de fácil entendimento, coloquei exemplos complexos e difícieis de entender. Afinal, como certa pessoa já disse antes, eu explico interfaces como o Bill Gates explica Linux.
Brincadeirinha, minha abordagem é utilizar os exemplos da própria API do Java, para demonstrar as vantagens de usar interfaces na prática mesmo.

P.S.: se alguém achar que alguma parte está mal escrita, mal estruturada ou simplesmente mal explicada, pode falar! Aí eu arrumo e faço uma versão 1.1 do tutorial :slight_smile:

J2Alex

Parabéns pelo seu tutorial sobre Interfaces. Achei bem conciso e esclarecedor.

O conceito de interfaces é realmente de difícil assimilação para quem está começando em Java - na verdade, o difícil é, a princípio, enxergar onde realmente elas podem ser úteis, mesmo pra quem já tem estrada na programação ( lido com programação a uns 15 anos e com OOP a uns 6 ).

Sorte que a comunidade Java é tão unida, a mais unida que eu já conheci até hoje… e o pessoal realmente se preocupa em ajudar.

Sadjow

Eu escrevi um artigo sobre interfaces!
http://labs.sadjow.com/2008/08/23/java-o-que-e-interface/

Valeu! :smiley:

Criado 31 de janeiro de 2003
Ultima resposta 23 de ago. de 2008
Respostas 9
Participantes 7