William, sua explicação de menos de 20 minutos (considerando as 2 aulas sobre construtores) foi a melhor que já vi. Muito claro e objetivo no ensino, sem enrolação e sem encher linguiça igual outros cursos (pagos) que tem na internet. Você facilitou muito o entendimento de tudo abordado até agora. Obrigado por compartilhar seu conhecimento conosco, dá até gosto de estudar Java assim.
Aula incrível e dicas de ouro. Principalmente em usar o THIS na primeira linha. Já pensou ficar no erro por conta simplesmente dele estar em outro local.. hahaha Obrigado *_* Aula 59 - OK ✔
Construtores são usados quando você quer inicializar as variáveis de instância(atributos) do objeto com um valor em tempo de criação(tempo de criação é quando você cria um objeto: Pessoa pessoa = new Pessoa( ) ). Sobrecarga de construtores é quando você quer iniciar um objeto de diferentes maneiras: sem argumentos(o construtor padrão) e o parametrizado(com parâmetros). Exemplo: Temos a classe pessoa. Se não quisermos inicializar ela com valores, usamos o construtor padrão da classe pessoa(se você não criar o construtor padrão, o compilador cria para você quando o objeto for criado), mas, se precisarmos inicializa-lo, então podemos chamar o construtor parametrizado(construtor com parâmetros) da classe Pessoa. Mas, se você definir apenas um construtor, com parâmetros, e não inicializa-lo(passar os argumentos necessários que corresponde ao numero e o tipo de parâmetros que você definiu), vai ter um erro, porque o programa exigi que esses argumentos sejam passados para o construtor. Nesse caso em especifico, para corrigir esse erro, você precisa criar um construtor padrão(isso se chama sobrecarga de construtores), pois o compilador não vai cria-lo, tendo em vista que você já criou um. Obs.: Você cria/usa o construtor padrão caso queira que as variáveis de instância sejam inicializadas com seus valores padrão, definidos pelo próprio Java(int = 0, double = 0.0, String = null, boolean = false). Nesse caso você não precisa inicializar o construtor diretamente(passar argumentos ao criar o objeto). Sobrecarga de construtores é como se fosse várias opções para inicializar um objeto. Se você definir apenas 1 construtor, ele terá que seguir esse padrão e não poderá ser inicializado com argumentos diferentes do que foi definido. Você pode criar outros construtores para dar mais opções de inicialização ao objeto(sem parâmetros ou com parâmetros diferentes dos outros). Resumo: se queremos ter diferentes formas de inicializar um objeto usando diferentes parâmetros, então devemos fazer sobrecarga de construtores.
@@ramonvinicius4419 A sua explicação ficou legal, mas (posso estar errado) acho que a dúvida do Bruno foi a diferença entre utilizar construtores e os MÉTODOS init que o professor utilizou na aula passada.
Eu entendi que os construtores formam uma pilha e vão sendo executados de maneira semelhante a funções recursivas... No entanto, qual é a aplicação real da sobrecarga de construtores?
Vi que não adicionou o get e set do atributo estudio, e não deu nenhum erro. Preciso adicionar os getters e setters para o estúdio, ou não é necessário?
Revisando umas aulas que já tinha assistido há cerca de um ano, sempre muito produtivo! Obrigado William.
William, sua explicação de menos de 20 minutos (considerando as 2 aulas sobre construtores) foi a melhor que já vi. Muito claro e objetivo no ensino, sem enrolação e sem encher linguiça igual outros cursos (pagos) que tem na internet. Você facilitou muito o entendimento de tudo abordado até agora. Obrigado por compartilhar seu conhecimento conosco, dá até gosto de estudar Java assim.
Fico feliz em saber. Muito obrigado pelo elogio
Tive de assistir a aula 3 vezes, mas depois que entendi, dei risada de mim mesmo
Aula 59 ok - 05/07/22
Muito Satisfatório entender como funciona a lógica do assunto, seu método de ensino é muito bom.
Aulas sensacionais!! Único problema é tanto anime na lista pra assistir agora 🤣
Que dicas maravilhosas! Java suporta isso de chamar o this dentro do construtor desde qual versão?
Aula 59 finalizaa dia 30/06/2023 11:24
Aula ✅ - 29/09/2023
Aula concluida 13/10/23
Aula 59 - 23/01/2023 - OK.
Aula 59 - 07/06/22 Ok!
Revendo em 22/10/2022
Aula 59 - OK!
Aula incrível e dicas de ouro. Principalmente em usar o THIS na primeira linha. Já pensou ficar no erro por conta simplesmente dele estar em outro local.. hahaha Obrigado *_* Aula 59 - OK ✔
o meu dando erro e era issokkk
cara tu é mt foda, tu é tipo o pelé da programação
Hauaua tô mais pro Neymar que só cai do que o Pelé. Muito obrigado pela comparação
Aula 59 - OK ✔️
Lesson 59 done.
show brincar com a ordem de chamada dos 3 construtores.
Aula 059 - 17/02/2023 - OK !
Aula 59 OK! 30/09/2023
Aula 59 - OK ✔ 01/11/2023
Aula muito boa!!
Valeu mestre! Uma hora a gente chega lá! Step by step!
Aula 59 OK
Aula 59 finalizada!
Aula 59 - OK ✔
💙💙
Aula 59 - ok
Aula 59 finalizada - dia 16/11/2024 😎😎
Presente!
WOOOOW MANNN THANK YOU SO MUCH! to zoando sou br
Aula 59, empolgado!
Done :-)
Aula 59 = OK!
✅
aula 59 ok.
Fiquei com uma duvida, quando eu devo utilizar init() ao invés de construtores?
Construtores são usados quando você quer inicializar as variáveis de instância(atributos) do objeto com um valor em tempo de criação(tempo de criação é quando você cria um objeto: Pessoa pessoa = new Pessoa( ) ). Sobrecarga de construtores é quando você quer iniciar um objeto de diferentes maneiras: sem argumentos(o construtor padrão) e o parametrizado(com parâmetros).
Exemplo:
Temos a classe pessoa. Se não quisermos inicializar ela com valores, usamos o construtor padrão da classe pessoa(se você não criar o construtor padrão, o compilador cria para você quando o objeto for criado), mas, se precisarmos inicializa-lo, então podemos chamar o construtor parametrizado(construtor com parâmetros) da classe Pessoa. Mas, se você definir apenas um construtor, com parâmetros, e não inicializa-lo(passar os argumentos necessários que corresponde ao numero e o tipo de parâmetros que você definiu), vai ter um erro, porque o programa exigi que esses argumentos sejam passados para o construtor. Nesse caso em especifico, para corrigir esse erro, você precisa criar um construtor padrão(isso se chama sobrecarga de construtores), pois o compilador não vai cria-lo, tendo em vista que você já criou um. Obs.: Você cria/usa o construtor padrão caso queira que as variáveis de instância sejam inicializadas com seus valores padrão, definidos pelo próprio Java(int = 0, double = 0.0, String = null, boolean = false). Nesse caso você não precisa inicializar o construtor diretamente(passar argumentos ao criar o objeto).
Sobrecarga de construtores é como se fosse várias opções para inicializar um objeto. Se você definir apenas 1 construtor, ele terá que seguir esse padrão e não poderá ser inicializado com argumentos diferentes do que foi definido. Você pode criar outros construtores para dar mais opções de inicialização ao objeto(sem parâmetros ou com parâmetros diferentes dos outros).
Resumo: se queremos ter diferentes formas de inicializar um objeto usando diferentes parâmetros, então devemos fazer sobrecarga de construtores.
@@ramonvinicius4419 A sua explicação ficou legal, mas (posso estar errado) acho que a dúvida do Bruno foi a diferença entre utilizar construtores e os MÉTODOS init que o professor utilizou na aula passada.
Aulas passadas*
Olá a todos. Alguém sabe como se chama o canal no Discord?
Aula 59 = OK! 22/12/2022
aula 59 finalizada! 26/03/23
Aula 59 - OK
💪💪💪🚀
Aula 59 - ok!
aula59 = ok;
Aula 59 Concluída - 03/01/2025
Aula 59 ok!
Aula59 =Ok✅ 11/01/2023
07/08/24
Gogogo! (9 nov 2024)
Aula 59 = ok
Aula 59: OK! 28/08/24
Aula 59 ok - 03/07/2024
ok
Eu entendi que os construtores formam uma pilha e vão sendo executados de maneira semelhante a funções recursivas... No entanto, qual é a aplicação real da sobrecarga de construtores?
Exatamente a mesma, inicializar o objeto de forma mais rápida, ou definir a quantidade mínima de atributos que um objeto precisa para ser criado
ok = 01/06/2022
Aula 59 - OK(28/10/2024)
alguem manda o link do discord? eu não consegui encontrar em nenhum lugar
O grupo é para membros do canal no nível virado no jiraya, o link não está disponível publicamente
check 15/07/2021
"Quem olha para fora, sonha; quem olha para dentro, desperta."
Carl Jung
23 de julho de 2024
Vi que não adicionou o get e set do atributo estudio, e não deu nenhum erro. Preciso adicionar os getters e setters para o estúdio, ou não é necessário?
Geralmente quando adiciona via construtor e não quer deixar os atributos serem alterados, você só cria o get e um construtor aceitando os parâmetros
@@DevDojoBrasil Entendi, muito obrigada pelo retorno! E esse curso está sensacional!
@@larissalemos4884 muito obrigado Larissa
DevDojo
System.out.println("Aula 59 = OK!");
Aula 59 - OK ✔
Aula 59 - OK
Aula 59 - OK ✔
Aula 59 - OK ✔