Curso POO Java #05b - Exemplo Prático em Java

208.15k views5208 WordsCopy TextShare
Curso em Vídeo
Nessa aula de POO, vamos fazer um grande exercício de Programação Orientada a Objetos utilizando Jav...
Video Transcript:
olá pequeno gafanhoto seja bem vindo a mais uma aula prática do seu curso de programação orientada a objeto com java o meu nome é gustavo guanabara eu sou professor e agora nós chegamos mais uma vez aula 05 essa aula 05 b onde a gente fez na 05 a um exercício proposto o exemplo proposto e esse exemplo prático vai ser programado agora durante essa aula não preciso nem dizer que você não precisa ter assistido a aulas 05 a sem assistir aula 05 a você não vai entender nada dessa aula sem comer porque tudo foi planejado lá então se você está com preguiça nossa maquiar uma grande que está lá vou nem assistir vou pular para a parte prática já era você precisa ter aula teórica porque lá foi onde eu tracei todas as diretrizes para poder trazer essa classe que a gente vai criar durante a aula prática então deixe de preguiça porque sem assistir aula teórica não vai dar não durante a aula teórica nós modelamos essa classe aqui ó a classe conta banco e nós vimos também que várias pessoas podem ter suas próprias contas então eu posso ter várias instâncias da mesma classe que a conta banco onde eu posso ter selar aqui do lado o jubileu ea creuza que são os dois que a gente brincou na aula passada eu criei uma conta para cada um fizemos depósitos fizemos aqui a gente vai ver como é que funciona isso na prática e ver se realmente está certo aquilo que a gente planejou anteriormente e você deve se lembrar da aula passada a gente fez essa classe que ela tinha os atributos número da conta tipo do no saldo status esses são os atributos cada um com a sua visibilidade então a número da conta público te protegido do no saldo o status eram privados então você vai ter que ser levado em consideração quando a gente fizer agora em java e nós tínhamos os métodos públicos abrir conta fechar conta depositar sacar e pagar a mensalidade e eu lembro que eu especifiquei algumas regras por exemplo para abrir contas se você for uma conta corrente você tem 50 reais automaticamente se for uma conta poupança já coloca a r$150 lá dentro automaticamente você não pode depositar em sacar dinheiro se a sua conta não estiver ativa o status dele não for verdadeiro então você tem uma série de regras que foram definidas na aula 05 a não fez ainda está lá em cima na playlist você vai directamente o seu curso de programação orientada a objeto em java e vai procurar a aula 05 a sem ela não tem como a gente dar continuidade aqui nós vemos também que existiam outros métodos públicos que são os métodos especiais o método construtor os métodos gates os métodos certas para cada um dos atributos isso a gente também já viu uma aula passada mas a gente vai se focar agora na criação dessa classe aqui que foi prevista na nossa aula teórica e que agora vai ser feito em java então pode abrir o seu ambiente aí abri o netbeans porque a gente vai começar a preparar o código eu vou deixar o código vai aparecer aqui do lado ele vai ficar fixo para a gente poder ir transitando entre a representação em algoritmos e do código ea representação java como vai ficar então abra os ambientes netbeans aí e vamos começar a criar as nossas classes já estou aqui no meio ambiente a primeira coisa que vou fazer é criar o projeto da aula 05 então eu tenho aula 02 03 04 vamos criar da 105 então clique aqui no papelzinho amarelo java aplicação java e clicar em próximo aqui eu vou chamar de aula 05 que vai ser o do projeto deixa marcado criar classe principal vamos finalizar aqui em alguns segundos ele vai criar a minha classe principal já com o método bem que a gente vai utilizar mais pra frente vou deixar reservado esse documento aqui não é diminuir daqui eliminam os comentários só pra gente ficar com o que importa no momento nós pra frente vai manter os comentários vou deixar reservado aqui eu vou fazer é abrir o projeto em cima do pacote da al-105 clicar com o botão direito novo classe java aqui vai ser a minha classe conta banco que foi aquela quer que está aparecendo aqui no cantinho conta banco o projeto já tá tudo preenchido vamos finalizar eu já tenho aqui vou dar mais uma vez uma lâmpada deixa a organização de pacote tudo bonitinho aqui minha classe conta banco exatamente como está representada ali do lado vamos começar colocando os atributos exatamente como está ali o primeiro tributo é um atributo público que ele é inteiro e é o número da conta ontem vírgula à semelhança de um lado para o outro funciona sempre então se você entendeu a aula teórica não vai ter problema nenhum aqui em java se você pulou a aula teórica provavelmente você vai ter todos os problemas na sua programação em java e não adianta botar a culpa na programação java a culpa é sua que não praticou o suficiente ainda o próximo atributo é protegido então por técnica ele é um tipo stream e ao tipo o próximo é privada o presidente também stream e abandona o de letras minúsculas ok os atributos outro também aproveite e o saldo é do tipo real eo último é private do tipo lógico o tabuleiro estados elas estão até agora nada muito diferente tudo que está aqui na no código algoritmo está do lado da do código java sem problema algum a partir de agora vamos aos métodos personalizados são os métodos que a gente previu lá na classe que está aparecendo aqui em cima o primeiro método todos os métodos são públicos é o black eyed abrir conta eu voltei ao abrir conta vou ter o fechar conta voltei a depositar o sacar eu pagar a mensalidade eu posso escrever aqui pagar a mensalidade sem problema nenhum tá ou deixar como está exatamente lá então basta você comparar o que está desse lado conquistar desse lado pausa o vídeo dá uma olhada ver o que se tem muita coisa diferente e ver o que cada uma das linhas agora eu vou passar para os métodos especiais eu tenho um construtor e tenho também os métodos de guerra ter sete de cada um deles você deve tá vendo ali do lado que eu tenho meus métodos especiais eu tenho o construtor o meu construtora vou fazer publique void e vou colocar o mesmo nome conta banco que acaba de criar o meu método construtor ele tem o mesmo nome da minha classe ea classe chama conta banco eu tenho aqui existe uma outra maneira de você criar o construtor basta você pressionar control e ou então clique com o botão direito e vai inserir código vai escolher o construtor não construtora não vai marcar nada tamanha gerar ele gerou exatamente aquilo que a gente fez anteriormente o método construtor agora vou fazer o próximo método que tem na sua tela o sete não me conta eo gatil conta lembrando que o número da conta é inteiro então vou ter que fazer isso aqui ó vamos fazer aqui pela black eyed 7 num conta ele vai receber o valor inteiro que é o número da conta ou igual a 1 em lá m e vou fazer com que ver esse ponto no conta receber a única diferença ali é o uso desses yogaterapia blick void jet não conta não tem parâmetro nenhum eu vou ter o irã desse ponto no conta é exatamente a mesma coisa que antes não pode ser pode né se o número da conta é inteiro tem que botar que em vez de void em ti ele vai lá e já tem um retorno por exemplo que se eu fizer o público o tablóide jet por exemplo o dono o dono ele vai retornar valores 30 então votar kitan desse ponto o dono eo dono é estranho e botar aqui ó nesse ponto do nu o dono é estranho tudo vai dar errado em cima disso porque está mandando dizendo que não vai retornar nada vai retornar assim vai tornar um stream e ele volta a funcionar só que eu não preciso criar guerra 13 7 na mão é claro que quando você está aprendendo o ideal é que você crie na mão só que a idéia aqui ela facilita a minha vida e permite a criação de guetos exceter automaticamente dá uma olhada aqui eu vou apagar os guetos e 7 que eu criei você na sua casa você pode até criar um contato um preencher logo que o conta banco construtor onde o saldo recebe 0 estado recebe 0 eu posso fazer assim ó diz saldo recebe zero diz status recebe falso sem problema nenhum mas eu vou sempre dá preferência pelo uso dos guetos de sets vamos criar os gatos e 7 aqui em baixo para fazer isso contra o wii o ponto incerti o botão direito e inserir códigos podem vir aqui botão direito inserir o código vai escolher jet setters vou selecionar todos só clicar aqui e selecionar todos por clicar em gerar acabou já está pronta já tá feito aqui todas as coisas que a gente previu lá no nosso código d todos especiais que está aparecendo aqui do lado já fiz o gueto setter de cada um deles a partir de agora eu não preciso mais fazer com que o saldo receba a 0 eu posso votar diz ponto 7 saldo zero em vez de dizer status recebe falsa não posso botar desse ponto 7 status foz beleza tanto faz um o método trabalhando diretamente com o atributo eu não vou dar preferência agora vou dar preferência lá na frente a colocar o outro voltar aqui o jovem está reclamando uma contracção de 1 a 0 eo status shows porque o método está lá embaixo né método construtor já vai começar a reclamar mas pode fazer um dos dois tipos conceitualmente agora que a gente já fez os métodos especiais a gente vai se focar nos métodos personalizados que são métodos de abrir e fechar a conta sakai depositar e pagar a mensalidade o código vai começar a aparecer aqui no canto direito da tela e você vai poder acompanhar a criação passo a passo vamos começar aqui com o código de abrir conta o método abrir contas se você perceber ele tem um atributo stringhi que o tipo aqui então vou colocar strong t é o tipo que vai receber tão fazer com que esse tipo já entre na um atributo tipo então votar diz 7 tipo vai ser t se a conta corrente ou conta poupança e eu tenho que habilitar o status não botar diz 1. 7 status que era dele eu posso fazer dessa maneira ou desse ponto status recebe verdadeiro é são quase do mesmo tamanho só que dessa maneira que eu estou utilizando o método modificador e aqui eu estou utilizando diretamente o acesso ao atributo eu sempre vou dar preferência por utilizar os métodos a mexer diretamente nos atributos mas na frente você vai ver o porquê disso aqui vou verificar se o tipo a conta corrente ou conta poupança para o ataque e fell se e da tab ele já monta que pra você unifieo se eu colocar se o t foi igual lembrando que o gol são dois guarás a conta corrente ele abriu a conta eu já vou fazer com que o saldo receba 50 reais então seria desse ponto e saldo recebe 50 se não desse ponto saldo recebe 150 votar o código igual itália se não se que o auxílio do java tem um passo então é o swift se o tc foi igual a conta-poupança faz isso mais uma vez estou trabalhando diretamente mexendo no atributo o ideal seria eu mexesse diretamente utilizando métodos talvez 1. 7 saldo que a gente criou automaticamente lá 50 percebe que o destino de baixo tempo quase a mesma sintáxi só que decidiu mexer diretamente no atributo de baixo eu estou fazendo pelo método vou dar preferência sempre por usar o método fazer a mesma coisa que desse ponto 7 saldo 150 e isso é relativo ao que estava antes da lei aquilo já tá reclamando do uso do igual nem também recomendando utilizar o iqd ou se você pode até clicar aqui e utilizar o ix que ele pára de reclamar você poderia deixar aquele jeito também tá se o tempo foi igual à cct foi o apê deixou deixar aqui ele é problema a gente conversa e proibi-los então esse aqui é o código do abrir conta compare com o código está aparecendo aqui do lado e ver como é bem parecido vamos agora passar para fechar conta ou fechar com até assim eu vou verificar se o saldo está negativo eu não posso fechar a conta nem com saldo negativo nem com saldo positivo em ficar exatamente 0 se o 10.
7 saldo for maior do que zero então ele vai mostrar na tela lembrando que seu professor deve ter dito evite mostrar coisas dentro de classes de mais pra frente vai ver como é que há gente em cápsula isso facilita a programação mas por enquanto deixa assim dessa maneira então tenho lá vou escrever na tela conta não pode ser fechada porque ainda tem dinheiro se não se desse ponto jett saldo for menor do que zero eu também não posso fechar a conta não pode ser fechada pois tem débito foi o seguinte aqui ó no abrir conta assim que ele abriu a conta eu vou colocar aqui pra escrever na tela conta aberta com sucesso ah só pra dar um retorno que o usuário se não dá uma olhadinha no código do lado se ele não está positivo e ele não está negativo em sinal de que a conta exatamente 0 aí eu posso desabilitá ela tom desse ponto sete estados falsa ela foi fechada com sucesso botar a mensagem aqui conta fechar né com sucesso comparar o resultado em java com o resultado em algoritmo que tá parecendo ali do lado perceba que eles são muito muito muito semelhantes vamos partir agora para o método depositar o depositar verifica se o status é verdadeiro como está escrito ali do lado a se o des o status foi igual a verdadeiro milta exatamente igual está ali do lado de uma maneira até mais fácil de fazer se um ponto e status e não criou o gat estados ele retornou o status ele eu vou colocar grande estátua está pronto desse ponto jett status se tem sete estados esse status que ele colocou aqui é porque todo o método que retorna booleano e não usa getty nos a isso mas eu vou botar jet aqui porque está aprendendo desse jeito logo no início se tiver ativo eu vou depositar então como é que estava na aula no início desse ponto saldo recebe desse ponto saldo mais valor o valor é aqui em cima esquecer de fazer um valor é fluente ver eu tenho um valor forte aqui em cima para poder receber o depósito é um salto recebe saldo mais de ver só que isso aqui tá mexendo diretamente os atributos mais uma vez vou fazer a versão utilizando métodos seria 10. 7 saldo só vou modificar o saldo para o saldo atual jet saldo mais ver você percebe que o comando de cima com para o comando da linha 32 com o comando da linha 33 o de cima tá mexendo diretamente nos atributos por debaixo trabalhando diretamente com os métodos especiais eu vou trabalhar sempre com os métodos especiais ou até deixar esse comentário pra você comparar depois ele depositou mandar mensagem aqui ó depósito realizado com sucesso na conta de que esse ponto jett dona rock então mais em aqui com castelo depósito realizado não tivesse consenso que o depósito realizado na conta de furlan se não se o estado não for verdadeiro impossível depositar em uma conta fechada thala compara os resultados pause se necessário só para você poder entender vamos partir agora para sacar sakar também recebe um valor que eu esqueça eu também vou verificar se está tudo é verdadeiro então vou colocar exatamente o que está lá em cima não copie e cole 20 copiar e colar enquanto você está aprendendo digita o código mesmo que demore um pouquinho mais você não está com pressa de aprender você está com vontade de aprender nunca se esqueça disso quem já foi alto vamos lá se desse ponto garante status compara o que está antes do que depois se estiver o status legal eu tenho que ver se tem saldo na conta isso porque a conta pode estar ativa eu quero sacar mil reais mas na conta só tem 500 então eu não posso sacar vou colocar aqui contada ali do lado se o saldo esse ponto jets alda for maior do que vê na verdade vou botar maior igual aqui não consegue sacar o valor exato s eu tenho mil reais na conta e quer sacar mil eu posso ficar sem dinheiro nem umas eu posso então ali tá saldo recebe saldo - v eu vou fazer em vez de de saldo recebe de saldo - v eu vou colocar 10. 7 saldo recebe desse ponto jett saldo - v é a mesma coisa só que agora trabalhando com método e vamos colocar aqui vamos colocar aqui vocês têm out vai ser o saque realizado na conta de fazer a mesma coisa desse ponto jett dono me mostrar o nome dado do cidadão lá se não é sinal de que ele não tem salvo então vou colocar aqui saldo insuficiente para saque ainda tem aqui é esse aqui é se ele tem dinheiro para sacar aqui ó else else decif aqui é se a conta não está ativa aqui é impossível sacar de uma conta fechada certo então compartilhe esse código com o código do lado e com certeza você vai conseguir entender qual é a diferença entre o programa em java do que o programa em algoritmo vamos passar agora por último método que o método de pagar mensalidade no pagamento da mensalidade o código você tá vendo aí do lado eu tenho uma declaração de variável inteira então tá aqui quem te vê e percebe que se vê aqui é uma variável local um atributo os atributos foram definidos aqui em cima vou colocar aqui ó declarei o vh1 fazer de acordo com o tipo né se é um infiel será então passou a ser assim e fells tab ele já montou o chelsea pra mim se que é tipo só peguei o tipo c o tipo foi igual a ser conta corrente o valor recebe 12 senão o valor recebe 20 se não se desse tipo foi igual a cp ele faz isso aqui colocar aqui ó só para não ficar achando a 0 aqui agora vou verificar o status se nesse ponto e atestados o verdadeiro ele vai pagar a mensalidade não vai ser assim 10.
7 saldo vai ser desse ponto o saldo atual - o valor que é 12 ouvinte de acordo com a mensalidade vamos escrever aqui mensalidade paga com sucesso por desse ponto em diante do gato se não se o estado não tiver aberto impossível pagar uma conta fechada e esse é o código que você está vendo aqui do lado e forma de algoritmo feito todo organizadinho totalmente em java antes de finalizar aqui em java como eu não tenho os comandos para mostrar o objeto eu vou criar um método aqui em cima que é o método estado atual da bota aqui public void estado atual só para mostrar o estado atual do objeto eu estava todo objeto vai ser eu vou mostrar na tela sala conta aí eu vou mostrar que o 10. 7 conta gatti número da conta vou mostrar que também é o dono vai ser desse ponto jett dono de escrever na tela o saldo tipo tal tipo de ensino é só para mostrar menor em nem precisa né o tipo da conta é desse ponto tipo aí vêm aqui depois dodô nuvens aldo mostrou saldo e apps a beije tipo b é tipo e também vou mostrar os estados está quanto está aberto não registadas esta que só pra mostrar o estado atual e fazer aquilo fazer um jantar assim que dá pra separar o resultado beleza esse método adicional que o estado atual e foi necessário vou poder mostrar os resultados na tela e não foi previsto na aula de algoritmo porque ele não tem necessidade de ser feita em algoritmos em java você vai precisar na linguagem php você está fazendo o curso php a gente tem o comando print r facilitou a nossa vida em relação a isso vamos agora a nossa classe principal lembra aquela primeira classe da aula 05 que a gente criou o que eu falei é reservar vamos voltar a ela agora vou voltar aqui em cima no al 105 ó meu com tamanco clique aqui para salvar tudo eu contar banco está com esse código gigantes ela nossa dá muito trabalho programa orientação a objeto olha só uma vez que você fez a sua classe c vai vir aqui e aqui você pode criar suas contas um cria a primeira conta do jubileu vamos lá o craque a conta banco pessoa um é uma nova conta banco acha parênteses ponto e vírgula acabei de criar um objeto chamado p11 esse meu p 1 vai ter o seguinte ó 7 número da conta vai ser contra 111 o nome dele a sejuv leu isso é acabei de criar uma conta que para o jubileu mandar mostrar o estado atual deixa aqui vamos executar dá uma olhada aqui embaixo eu tenho a minha conta um não tem tipo ainda que não definir o dono ao jubileu e está vazia conta agora nós vamos fazer o seguinte vamos abrir a conta do jubileu de um ponto abrir conta para ser uma conta corrente como tinha previsto anteriormente automaticamente quando eu criar essa conta ó colocar isso que antes do estado atuam é facilitar automaticamente quando eu executava agora contra 1 é uma conta corrente é do jubileu e já tem 50 reais isso porque quando eu modelei essa conta do banco eu posso ter várias pessoas com várias contas como a gente viu no início dessa aula inclusive o jubileu caudalie ele tem um dinheirinho dele ele vai fazer a criação da conta corrente então a conta corrente do jubileu já vai começar com 50 reais ea conta da cruza que a gente vai criar já já vai começar com 150 por uma conta poupança o jubileu vai fazer um depósito de 300 reais dentro dessa conta essa conta vai ficar com 305 na verdade porque são os trezentos reais que acabou de depositar você tá vendo aí do lado mas os 50 que ele já tinha por ser uma conta corrente então ele já abriu a conta e já está com 50 reais e os tatus aqui é verdadeiro é a conta está ativa no momento vamos aqui embaixo criar uma nova conta conta banco p2 que a creuza e o conta banco agora nós vamos fazer o seguinte e 2. 7 número da conta é a conta 2222 que vai ser 7 dona da creuza nós vamos abrir a conta creuza não deixar a conta da empresa fechada ainda com parque p2 ponto estado atual e mostrar o estado atual do p1 depois o db2 e olha que esse primeiro aqui aumentar um pouquinho ontem eu tenho e 1 a conta foi aberta com sucesso foi a ponta do jubileu perto ea conta da criança ainda não foi aberta que o estado está falso isso porque eu não fiz aqui ainda e 2.
Copyright © 2024. Made with ♥ in London by YTScribe.com