Ei Dev, beleza? Agora temos um servidor no Discord para vocês tirarem dúvidas e compartilharem conhecimentos: discord.gg/wz57R2c2XF Até mais e bons estudos ;)
Excelente conteúdo amigo! estava com dificuldades pra entender sobre isso no livro do Deitel. Sua explicação me fez compreender 100% sobre interfaces. Obrigado! +1 inscrito.
Cara finalizei todas as suas aulas de POO até o momento e parabéns pelo trabalho fantástico de coração mesmo. Você me ajudou muito com esses conteúdos!
caracaaaa, agora o curso começou a esquentar, muita informação para assimilar, começou a ficar complicado quando criou a classe VideoGame.java mas vou assistir o vídeo várias vezes pra pegar a idea
Tem algum tutorial sobre usar interface em dialogs? por exemplo, criar um adapter em classe separada e chamar um dialog da atividade atual através dessa classe
1/3 do vídeo eu já tinha entendido. li e reli o capítulo de um livro sobre isso e não entendi. como pode eu não conseguir entender o que um ser humano quis dizer em um texto? kkk obrigada pelo vídeo!
Por volta dos 25:25. Estou com uma Duvida. Quando colocar um tipo de método dentro de outro, vc pode chamar ele sem instancia-lo? pq eu percebi que da para usar pingPong.jogar() dentro do método jogar sem instanciar a classe, assim como vc também colocou. Vc pode explicar melhor essa parte
Ótima pergunta! Nesse método eu recebo por parâmetro um objeto jogo, ou seja, vai vir de fora esse objeto, passando como parâmetro na chamada do método. Se você passar um objeto que não foi instanciado nesse método, assim: Jogo jogo; // está null videogame.jogar(jogo); Vai dar erro, porque dentro do método de Videogame irá tentar chamar o método jogar desse jogo que é null (não foi instanciado). Uma forma de prevenir isso seria colocar uma verificação de jogo! = null, igual acontece no método fechar. Não sei se você percebeu, mas tem duas variáveis com o mesmo nome "jogo": um é o parâmetro do método e o outro é o atributo da classe. Nesse cenário para falar pro Java que você quer usar o parâmetro do método, você usa apenas como "jogo", para você usar o atributo da classe você precisa usar o this, ficando "this.jogo". No exemplo do vídeo quando chama o método jogar, eu pego o jogo que foi passado no parâmetro (tá no parênteses) e salvo no atributo da classe jogo assim: this.jogo = jogo; Respondi sua dúvida? Pode perguntar se não ficou claro...
@@AcademiadosDevs ali no min 24:00 professor, quando você coloca a interface dentro de jogar(). Na linha 10 vc colocou jogo.jogar(); Eu entendi que pode chamar direto um método de outra classe (ou interface), quando coloco ela como tipo de parâmetro dentro de um método Exemplo: public void Jogar(Jogo exemplo){ -> este método só recebe parâmetros do tipo Jogo. Ok exemplo.jogar(); -> aqui eu pego o que foi colocado dentro do método Jogar() , já chamando o método jogar() da interface ? } (fui escrevendo a pergunta e acho que entendi kkk mais vou mandar assim msm, caso estiver achando errado)
Suas aulas surpreendem na qualidade. Parabéns! Sabe dizer se há alguma extensão no VSCode para criar interfaces sem precisar escrever todo o código, similar ao Palette do Swing no NetBeans?
Obrigado, Fabio. Já fiz curso técnico em informática e sou formado em Ciência da Computação. Não trabalho com a linguagem Java, sou desenvolvedor frontend ✌️
O meu fica dando " no overridable methods founds in the super type. Alem de não aparecer a opcao de criar o construtor rapidamente,no refactor,como tambem nao consigo passar os metodos que crio numa interface,para uma outra classe que fica dando erro.
Esse erro "no overridable methods founds in the super type" acontece porque a forma como o método foi escrito na interface não é idêntico ao método da classe que você está implementando. exemplo: na interface Atleta: public void darSaltoMortal(int quantidade); ----- na classe Ginasta class Ginasta implements Atleta ... public void darSaltoMortal(int quantidade) { ... } Perceba que os métodos precisam ter uma assinatura identica: - ambos tem um retorno void; - ambos tem o modificado public; - ambos tem exatamente o mesmo nome darSaltoMortal; - ambos tem apenas um parâmetro que é um inteiro; Confere aí se foi escrito corretamente.
não entendo qnd eu vou fazer o metodo construtor na janelinha de fazer metodos get e setters etc.. nao aparece a opcao de criar ele,como tambem qnd vc clica na lampadazinha para adicionar a interface,n aparece a opcao de criar os override da interface na janela. Simplesmente o meu Visual não tem as opcoes que no seu tem. pode me ajudar por favor?