‫Bem vindo de volta.
‫E neste vídeo, vamos dar uma olhada nas diferentes quantidades de construtores
‫que podemos criar, e eles são ilimitados, quase pelo menos tanto quanto você tem espaço em sua memória.
‫Mas você pode criar muitos construtores.
‫Então essa é a ideia geral.
‫Criamos um construtor aqui em nosso último vídeo, e esse construtor é um
‫construtor parametrizado, construtor parametrizado.
‫Agora, não precisamos criar um construtor parametrizado.
‫Podemos até criar um construtor não parametrizado.
‫Portanto, um construtor padrão.
‫Então, vamos criar um construtor padrão no topo e vou chamá-lo de humano público.
‫E aqui, vou escrever algo no console.
‫Então S. C. construtor chamado ou você pode até dizer objeto criado.
‫Então é isso.
‫Nada mais do que isso.
‫Agora, se eu fizer isso, como você pode ver, temos um construtor parametrizado e agora temos um
‫construtor padrão também.
‫Para o construtor, podemos criar um objeto do tipo humano que ainda não possui nenhuma informação adicional.
‫Então, humano e eu vou chamar esse humano básico vai ser um novo humano.
‫É isso.
‫Então agora o humano básico não sabe como se apresentar.
‫Claro, podemos chamar esse método de humano básico, me apresentar, mas não haverá muitas informações fornecidas.
‫Então, se chamarmos isso, dizemos construtor chamado objeto criado.
‫Olá, tenho zero anos.
‫A cor dos meus olhos é então não há nenhuma informação dada porque este humano básico bem, como eu disse, não
‫tem nenhuma informação adicional.
‫Como você pode ver, já temos dois construtores diferentes, mas podemos até criar mais.
‫Então, podemos ir em frente e copiar esse aqui.
‫Então, vamos copiar o construtor que tínhamos anteriormente.
‫Digamos que não tenhamos a idade, portanto, temos apenas as outras informações.
‫Agora, podemos ir em frente e criar um humano que não tenha o H.
‫Então, digamos que não temos a idade de O'Malia, podemos nos livrar disso e podemos executar o código novamente.
‫Agora diz: Oi, sou O'Malia e tenho zero anos, minha cor é azul e é Vereide zero.
‫Porque se um valor estiver vazio, como no nosso caso, H e inteiros vazios, o padrão será zero.
‫Portanto, H é simplesmente inicializado com zero, mesmo que não o inicializemos.
‫Como você pode ver aqui, diz zero anos de idade, embora não tenhamos inserido nada.
‫OK, então como podemos resolver isso?
‫Como podemos consertar isso?
‫Poderíamos consertar o buraco, me apresentar para que pudéssemos dizer, OK, se há alguém ou se há algum H.
‫Então, digamos que se a idade não seja igual a zero, vá em frente e leia este aqui.
‫Vou mudar muito isso aqui, então vou mudar isso.
‫Portanto, se H não for igual a zero.
‫Certo e então só se apresentar com o primeiro nome, o sobrenome colorido.
‫Portanto, livre-se de H aqui e livre-se de.
‫Este aqui, de quatro anos, não é como rodar de novo.
‫E realmente obtemos um erro que verificamos porque eu não alterei isso.
‫OK, agora podemos executá-lo novamente.
‫Agora o vemos, Dennis, blá, blá.
‫Isso é bom.
‫Sou meu oponente e a cor dos meus olhos é azul.
‫Então agora, O'Malia, porque não havia idade dada a sua usada ou tratada de forma diferente de uma forma que ela
‫se apresentasse de forma diferente.
‫E por que isso é útil?
‫Por que teríamos isso?
‫Digamos que você queira escrever um programa que pegue dados do usuário de um banco de dados e, em seguida, faça algo com esses
‫dados.
‫Portanto, ele deve fazer alguns cálculos ou deve escrever algumas informações para eles ou o que quer que seja.
‫Portanto, se você tiver todas as informações sobre esse usuário, tudo bem.
‫Em seguida, você pode criar um formulário e adicionar todas as informações a esse formulário e pode imprimi-lo e enviá-lo
‫para a pessoa ou o que quer que seja.
‫Mas e se você estiver faltando alguma informação?
‫Então, digamos que você não tenha o poço, então você simplesmente não escreverá o no formulário.
‫Mas e se houver algo mais importante faltando, como o endereço?
‫Por que você iria imprimi-lo?
‫Porque você não pode enviar para essa pessoa.
‫Então, você escreveria um tipo diferente de código para dizer, OK, estou coletando todas as pessoas que não têm
‫um endereço e estou fazendo outra coisa.
‫Estou checando o nome no Facebook ou algo parecido.
‫Assim, o programa verificaria a API do Facebook.
‫Existe uma pessoa com esse nome, sobrenome e idade?
‫E então o Facebook daria a informação de que o programa poderia fazer mais investigações sobre a
‫pessoa?
‫E isso é algumas coisas sensíveis aos dados que estou falando aqui.
‫Mas, em geral, é muito útil criar construtores para quê?
‫Informações diferentes?
‫Portanto, temos um com quatro parâmetros, um com três parâmetros.
‫Ainda podemos criar um com dois ou um com um.
‫Então, esse é um pequeno desafio para você.
‫Ajuste os parâmetros.
‫Portanto, você tem todos os quatro casos ou, na verdade, cinco casos.
‫Portanto, este é o construtor padrão.
‫Agora, por favor, vá em frente e crie um construtor diferente para o nome e o sobrenome, outro apenas para o primeiro
‫nome e, em seguida, é claro, ajuste apenas para me apresentar o método de acordo.
‫Tudo bem, espero que você tenha tentado.
‫Então, o que vou fazer é apenas copiar esse código aqui.
‫Vou me livrar da cor dos olhos.
‫É isso, então esse é o outro construtor.
‫Agora, vou copiar isso e vou me livrar do sobrenome.
‫Tudo bem.
‫E vamos nos livrar do sobrenome.
‫E agora, é claro, ainda precisamos ajustar nosso método, então.
‫Eles me apresentam o método, então aqui tivemos o caso em que H não era zero e digamos que o sobrenome não
‫é igual agora, e o que mais temos aqui?
‫A cor dos olhos não é igual agora.
‫E, finalmente, nosso primeiro nome.
‫Então, poderíamos ter uma ordem diferente, mas no final, tudo bem.
‫Portanto, se todos esses valores não forem iguais agora, quero prosseguir e fazer isso de outra forma, ou
‫então, se quero ter uma verificação diferente aqui.
‫Vou copiar isso aqui e vou dizer e no próximo, e se não tivermos um IKAROS para que possamos nos
‫livrar deste?
‫E agora vamos copiar de novo.
‫E agora falta a idade em geral.
‫Então, vamos nos livrar do H.
‫E agora, finalmente, temos uma versão onde não temos um sobrenome.
‫Portanto, agora, é claro, precisamos ajustar as declarações.
‫Então, se temos o primeiro nome e temos o sobrenome e temos o H e aqui temos apenas
‫o H, então queremos escrever algo sobre o H e I e assim por diante.
‫Muito velho.
‫Dois anos de idade.
‫Agora não precisamos mais disso.
‫Agora, isso se tivermos a idade, se tivermos o sobrenome e o primeiro nome, certo.
‫Portanto, agora temos apenas o nome e o sobrenome, para que possamos nos livrar de todo o aspecto da cor dos olhos.
‫E agora, finalmente, só temos o primeiro nome, certo.
‫Então, vamos nos livrar de tudo, exceto do primeiro nome.
‫Portanto, agora nosso método de apresentação será limpo e sempre nos informará exatamente o que está
‫disponível.
‫Então, digamos que criamos um novo humano e não um básico, mas vamos chamá-lo de humano, Natalie, sem dormir.
‫E ela é uma nova humana e só temos seu primeiro nome.
‫E agora, Natalie, por favor, apresente-se.
‫Talvez não devêssemos usar uma letra maiúscula aqui.
‫Natalie, apresente-se.
‫E nós temos um que tem um sobrenome.
‫Tão humano.
‫Vou chamá-lo de Michael novamente.
‫Ótimo nome, novo Michael humano.
‫E não é humano, mas é humano.
‫E esse Michael vai se apresentar e Michael deve ter um sobrenome.
‫Vou chamá-lo de Michael Miller.
‫E agora a última versão, humana e será franca, é um novo humano.
‫E é o Frank.
‫E esse cara se chama Walter.
‫Sobrenome muito engraçado.
‫E então ele tem um H.
‫Então, digamos que ele esteja bem, na verdade, não temos essa versão.
‫Não temos a versão em que temos apenas o H, mas não temos a cor dos olhos.
‫Então esse seria outro construtor que poderíamos criar.
‫Na verdade, vamos fazer isso porque podemos criar um diferente.
‫Vou apenas copiar na verdade, vou copiar esse aqui, o parametrizado aqui e vou colocar aqui, mas
‫vou tirar a cor dos olhos e vou pegar livrar-se da minha cor aqui também.
‫Então agora, é claro, eu tive que ajustar minha coisa de me apresentar também, mas aqui eu
‫quero que Frank tenha 25 anos e quero que Frank se apresente.
‫Então agora você vê que é sempre o mesmo.
‫Só precisamos ajustar com base nos parâmetros que temos disponíveis e então seguir em frente e executar o
‫código para estarmos prontos.
‫Olá, sou Natalie.
‫Olá, sou Michael Miller.
‫Eu sou Frank Walter e tenho 25 anos e assim por diante.
‫Tudo bem.
‫Então, agora você viu como criar vários construtores diferentes e pode ver que temos um construtor padrão,
‫que não usa nenhum parâmetro, e temos outros diferentes que têm várias versões
‫diferentes de quantidade de parâmetros.
‫Excelente.
‫Agora que você sabe que devemos dar uma olhada nas propriedades e elas são super, super úteis e úteis e
‫veremos como podemos alterar os valores sem ter que tornar a variável pública, porque você tem que ter muito
‫cuidado com as variáveis públicas de classes que você cria porque pode ser bem complicado
‫se você alterá-las, pode haver muitos problemas de segurança.
‫E se você não quiser saber mais sobre isso, tenho um link que compartilhei com você.
‫Você pode apenas verificar isso e ler com mais detalhes qual é o propósito de usar o Privateer e por que ele é
‫importante.
‫Então, eu diria que é você no próximo vídeo, onde vamos cobrir as propriedades e.
‫Sim, divirta-se.