Curso POO conceito #14a - Exercícios de POO (Parte 2)

78.22k views4065 WordsCopy TextShare
Curso em Vídeo
Nessa aula de POO, vamos fazer uma lista de exercícios de programação orientada a objetos para você ...
Video Transcript:
[Música] [Música] olá pequeno gafanhoto seja bem-vinda mais uma aula do seu curso de programação orientada a objeto a parte teórica o meu nome é gustavo guanabara eu sou professor e agora nós chegamos a mais uma aula que agora é a aula 14 a onde nós vamos fazer uma aula de exercícios mais uma aula você se lembra muito bem na aula 09 a nós fizemos 15 exercícios e agora na aula 14a nós vamos fazer mais 10 exercícios e além de fazer dez exercícios se você está pensando em haia não preciso fazer exercício precisa assim eu vou
mostrar pra você no final dessa aula um exercício prático que a gente está bolando aqui pra gente poder implementar na linguagem de programação então bota em prática agora os conhecimentos que você teve nessas aulas nessas últimas aulas da aula 10 até aula 15 que a gente falou sobre herança e polimorfismo que são dois conceitos muito importante em que muita gente confunde e agora você vai poder colocar isso tudo em prática diretamente com os exercícios que caíram em concursos públicos isso porque como já de costume essa aula de exercício é um oferecimento do sistema educando de
ensino sistema educando de ensino ele tem preparatório para vários concursos eu particularmente sou professor do curso educando estudo preparatório de dois concursos o concurso da marinha que é o cap pb e o concurso da aeronáutica que é o rs sim marinha você entra como cabo aeronáutica você entra como terceiro sargento e que tem que fazer guanabara se você tem um curso técnico precisa ter até 25 anos e fazer um preparatório o preparatório melhor do brasil o sistema educando de ensino não sou eu que estou falando isso as últimas provas que tem acontecido a gente tem
sempre conseguido ótimos resultados inclusive 01 02 03 só os três primeiros colocados de vários dos concursos primeiro colocado na marinha a gente já está acontecendo há seis anos não é uma novidade para ninguém a gente tem um preparatório de um preparatório muito bem estruturado para fazer você chega a sua vitória na descrição desse vídeo você tem várias informações sobre as unidades do sistema educando de ensino inclusive com os telefones das unidades onde o trabalho pode ligar para lá ver quais quais são as matérias quais são as condições que tipo de material que você precisa para
começar a estudar e se você é um pequeno gafanhoto que está entrando agora no 2º grau vai entrar nos próximos anos você pode ir ao sistema educando de ensino que lá eles também têm segundo grau técnico junto com preparatórios e já estuda e fase preparatória ao mesmo tempo e de quebra tem aula comigo de programação também pagam para de conversa não parar de papo e vamos diretamente porque interessa que são as questões inclusive a questão 01 é uma questão que caiu exatamente uma semana atrás eu estou gravando essa aula no final de 2016 no concurso
2016 que aconteceu semana passada a gente já teve acesso a prova eu trouxe as questões que caíram de programas honesta objeto todas elas diretamente nessa aula e esse é o curso em vídeo sempre atualizado para você nessa questão que caiu na semana passada diz o seguinte segundo deitou com relação à linguagem de programação java é correto afirmar que nem se você está pensando mas não estou fazendo e já voltou fazendo em php calma você vai conseguir responder essa pergunta também as alternativas são essas daí e dizem coisas em relação à construtores espero que você dê
uma olhada com atenção leia atentamente e ver se você sabe me dar essa resposta depois do contador a gente já vem com um gabarito e aí qual foi a resposta que você marcou eu espero que você tenha acertado mas vamos analisar todas elas começando com a letra a um construtor pode ter um nome diferente da sua classe e aí se você está fazendo em php você sabe que eu posso ter dois nomes que o construtor ou o nome da própria classe ou então underline underline constante no caso do java que é o que a questão
está cobrando eu só posso utilizar o nome da própria classe para o construtor então essa letra infelizmente está incorreta popular para letras e se uma classe não incluir um construtor as variáveis de instância não são inicializados aí é que você se engana se você não colocar um construtor automaticamente os atributos que são numéricos vão receber o valor zero os atributos que são alfanuméricos vão receber um valor vazio e os atributos lógicos vão receber o valor falso não se você não declarar um construtor todos os atributos são inicializados a letra c está incorreta a letra d
não existe o conceito de construtor na linguagem já existe sempre quero gafanhoto toda a linguagem de programação orientada a objeto tem suporte a construtores então essa letra d também está errada e obviamente está sempre a honda foi atento a letra b que foi que eu deixei por último é afirmativa correta o compilador fornece um construtor padrão sem parâmetros em qualquer classe que não inclui explicitamente um construtor essa resposta está correta e é isso que eu vou explicar se você não coloca um construtor a própria linguagem de programação definir um construtor vazio e sem linha nenhuma
então a atribuição é feita automaticamente como a gente viu anteriormente e se você não define o construtor a própria linguagem se trata disso automaticamente ela se responsabiliza por criar um construtor sem parâmetro nenhum e sem linha nenhuma eu espero sinceramente que você tenha acertado a partir da próxima questão aqui essa questão também é da marinha mas do concurso de 2010 e ela pergunta seguinte uma das formas de reutilização de software é a criação de uma classe que absorve membros de outra classe já existentes a nova classe é aprimorada com capacidades novas ou modificadas o conceito
da programação orientada a objetos eu estou falando aqui olha as alternativas aqui do lado essa questão é bem fácil vem aí o contador logo em seguida o gabarito oficial essa não tem como você errar e se você errou você precisa muito da uma olhada nas aulas de programação dentro do objeto principalmente as aulas de herança isso porque esse conceito que essa questão está cobrando é o conceito de herança letra b é o gabarito essa questão tem muito o que ficar discutindo aqui com você é um conceito direto uma questão simples e objetiva a próxima questão
que a 03 é do rs isso é já partimos para o concurso da aeronáutica e nessa questão 03 de 2011 ela diz o seguinte observa o diagrama seguir e assinale a alternativa correta no que diz respeito à classe de sinal forte então você percebe aqui embaixo é um diagrama de heranças a gente tem aqui um diagrama de representação de herança entre classes ele tá perguntando em relação ao de cima o format que essa classe aqui de baixo as alternativas estão aparecendo aqui do lado eu espero que você responda leia com atenção porque você precisa de
alguns conceitos de herança para responder essa questão e aí ficou confuso se você se confundiu muito clique em cima do resende interatividade e procure as aulas de herança você precisa ter esse conhecimento não falar um pouquinho resumidamente em relação à árvore hierárquica sempre você tem uma árvore e arca essa classe que deu origem a todas as outras é aquela que não tem mãe o que ele chama de classe raiz as classes que não têm filhos ué não tem herdeiras a gente chama de classe filha toda a classe que tem outra classe em baixo a gente
chama de cima de mãe progenitora ou super classe ea de baixo a gente chama de filha ou subclasse só que a gente tem algumas nomenclaturas um pouco mais detalhadas que é o seguinte em uma fôrma tié progenitora não é fumante é subclasse é filha assim como não é fumante pode ser mãe também porque ela tem duas filhas de sinal forte e transformar o conceito que geralmente as pessoas se engole um é o de descendente e de ascendente ou de ancestral e descendente é o seguinte olha só o format ela é mãe de noah performance e
ancestral de cima o format certo para eu saber quem são os assentos ancestrais de uma classe eu tenho que pular a mãe dela e ver todos que são acima são as estréias de forma similar os descendentes o seguinte o format é a mãe eu pulo as filhas de forte e todas as que são netas de forma tite são descendentes dela então descendente ancestral você tem que pular um nível de hierarquia de heranças vamos ver aqui ó letrar qualquer classe data será ascendente the format não né não tá errado disse moffat é descendente de forma decimal
format é de excelente the format essa questão está certa essa afirmativa está correta letra d é o gabarito não continuar decimal forma de é ancestral de forma decimal forma que não é ancestral é descendente se eu escrevesse format é ancestral de cima o format também estaria correta ea última que joyce format é filha de sinal forte jóis forma que não é filha do ex fumante é irmã elas são filhas da mesma mãe elas são sub 14 da mesma superclasse se você tá enrolado com isso não perca as aulas de herança você precisa aprender esses conceitos
vamos para mais uma questão a questão 04 também uma questão novinha do concurso da marinha que aconteceu na semana passada a questão 4 diz o seguinte segundo leitão fornecer uma superclasse apropriada a partir da qual outras classes podem andar e assim compartilhar um design comum é o propósito de muito cuidado com essa questão ela tem uma maldade muito grande embutida nela leia com atenção pause responda e já já a gente veio a resposta como eu disse anteriormente antes desse contador essa questão ela é maldosa isso porque ela te leva a crer no conceito de herança
conceito de herança tem a ver com superclasse subclasse e aí você vai na seca você vai louco pra pular para a próxima questão se marca a letra b e segue seu caminho e aí você erra isso porque nós não estamos falando de uma subclasse no caso aqui nós estaríamos falando de uma superclasse que superclasse eu crio pra poder dá origem a outras classes e essa super classe não vai virar um objeto nós estamos falando aqui de uma classe abstrata muito cuidado com isso que apesar de não está explicitamente escrito isso na questão é sobre a
classe abstrata que está falando a gente só consegue chegar essa resposta por eliminação das demais a marinha adora fazer questões desse tipo mais uma questão aqui é que estão os 5 é da aeronáutica e ela pergunta seguinte entende-se por método abstrato um método que nós temos quatro alternativas muito cuidado também na hora de responder por elas se parecem bastante vamos lá bota em prática que você sabe que no afã em nota e aí qual que marcou leu com atenção dá uma olhada aqui um método abstrato é aquele onde na classe mãe que é abstrata eu
só posso criar métodos abstratos dentro de classes abstratas e eu escrevo só linha do método digo que ele é abstrato e não implemento assim como eu faço nas interfaces por não estarem implementados eu forço em que eles sejam implementados na filha então o método abstrato é um método que foi declarado mas que não foi implementado esse está na letra a que é o gabarito oficial ea única resposta possível vamos a mais uma questão a 06 também do curso da aeronáutica do ano de 2010 ele pede o seguinte mark verdadeiro ou falso aí as três alternativas
e ele faz as seguintes afirmativas a herança permite basear uma nova classe na definição de outra classe segundo afirmativa não se pode sobrepor um comportamento de uma superclasse em uma subclasse ea última afirmativa com o mecanismo de herança é possível estabelecer relacionado os do tipo é um entre classes essas são as alternativas as alternativas de marcar aí qual delas é relativa às suas respostas da marcação assim vamos analisar e responder cada uma delas a primeira afirmativa do seguinte a herança permite basear uma nova classe na definição de outra classe é exatamente para isso que serve
a herança ela baseia a sua implementação atual na implementação de uma superclasse a segunda afirmativa seguinte não se pode sobrepor um comportamento de uma subclasse eu posso sobrepor métodos posso então está dizendo que não então essa questão essa foi a segunda afirmativa está falsa ea última afirmativa que ele teve aqui com o mecanismo de herança é possível estabelecer relacionamento do tipo é um em heranças são relacionamentos do tipo é um exatamente então essa afirmativa também está a verdadeira onde já apareceu verdadeiro e falso e verdadeiro apareceu na letra b e essa é sua resposta essa
também ficou relativamente fácil de acertar a partir para a sétima questão já está chegando no final mais uma questão fresquinha do concurso de 2016 da aeronáutica né que não foi a da semana passada foi no meio desse ano ele pedir o seguinte ao programa em php orientada a objetos e declarar uma classe com a palavra chave final conforme o código a baixa pode se afirmar que não está aqui o código onde você não esteja fazendo o curso de php não tem problema você vai saber responder e as alternativas aqui e me diz o que pode
acontecer o que não pode e aí veio a resposta chegou a resposta correta aí vamos ver aqui a letra a seguinte ó às subclasses de classe a não herdaram os seus métodos então tá joão é dar toda a classe que é final ela não pode ter filha ela não pode ter herdado da então esse é o conceito da classe fino letra b a classe a não poder essa instância nada ela pode se distanciar dela só não poderia ser influenciada se ela fosse abstrata mas ela final ela não é abstrata letras e à classe a não
poderá ter subclasses exatamente isso que acabei de falar quando cria uma classe como final ela não pode ser submetido a seis letras ea resposta certa ea última a classe a não poderá ter métodos ela pode ter metas sem problema nenhum e é uma classificação ela só não pode ser herdada eu espero sinceramente que você tenha acertado que esse conceito é bem simples e se você não viu a playlist está aqui em cima você sempre vai poder acessar e não perder as aulas teóricas fazer com muita atenção e com muita vontade vamos a mais uma questão
aqui é mais uma questão da marinha dessa vez de 2007 onde ela diz o seguinte em relação à programação orientada a objeto assinale a opção correta aqui tem algumas afirmativas em relação à visibilidade travesti protector e publique e você vai ter que lembrar dar uma relembrada nos níveis de acesso e suas peculiaridades responde aí e já já a gente vem com um gabarito para responder essa questão você tem que dar lembrada do seguinte da seguinte estrutura quando você tem a visibilidade ps num sanduíche ou de baixo é o menor nível de cima é o maior
nível eu tenho privado protegido público eu tenho lá uma camada totalmente protegida totalmente privada é totalmente é encapsulado isolada eu tenho uma uma visibilidade totalmente pública totalmente liberada e um meio termo que é o protegido pense no seguinte toda a linguagem de programação é a seguinte quando você trabalha com a herança é de modelos de métodos você pensa da seguinte maneira tudo aquilo que é público não pode descer de nível quando você desce um nível hierárquico você não pode tornar o público protegido nem privado e tem que continuar público se tem uma coisa privada você
pode até transformar em protegido transformá-lo em pública você pode subir no nível só não pode descer o nível com isso em mente você pode responder essa pergunta agora coletar os membros private de uma superclasse são herdados pelas suas subclasses essa questão tanto quanto polêmica isso porque essa alternativa no meu ponto de vista é o seguinte toda subclasse ela herda tudo da sua super classe ela pode não está acessível ela está herdada mas pode não estar acessível na minha visão essa letra estaria correta mas previsão da banca da marinha essa afirmativa está incorreta é mais uma
coisa que preparatório vai te organizar avaí nós vamos passar para você qual é a visão da banca isso é muito importante também a letra de um método público da superclasse pode tornar se um método protegido privado então lembrando se alguma coisa pública você não pode descer o nível então essa questão também está errada essa afirmativa está errada letra c o método protegido da superclasse pode se tornar privado mais uma vez eu tentando de seu nível não consigo letra de utilizar o acesso protegido oferece um nível intermediário entre público e privado exatamente aquilo que eu falei
sanduíche por acreditar no meio é um método é um acesso intermediário então a resposta certa seria letra d vamos agora a questão 09 também da aeronáutica só que agora recente pra caramba na questão essa questão apareceu no meio do ano de 2016 que ela diz o seguinte marque a alternativa que completa corretamente a lacuna no caso da aeronáutica caip hp no caso da marinha a java então é também esses dois cursos são muito importantes pra você ao programa e php utilizando esse paradigma de orientação a objeto utilizasse o símbolo tal para poder acessar as funções
definidas em uma classe no caso do java é o ponto então por exemplo eu quero ter um objeto a 1 que o aluno ponto nome eu estou tentando acessar o atributo nome se ele for público ou então se ela gatti nome 7 nome e com um ponto no jogo eu faço qual é o símbolo que utilizem php as alternativas estão aí do lado respondi rapidinho e já já a gente vota se você é um gafanhoto esperto já elimina a letra a porque está cobrando em php não é a mesma coisa que em java e se
você é um gafanhoto que está fazendo curso ph p você já sabe a resposta que é a letra de jel a referência entre componentes internos dentro de um objeto o grande problema é que você foi desatento você acaba marcando a letra c isso porque a letra c utiliza essa simbologia a simbologia adotada aqui na letra c ela é relativa a itens de coleção e php então pode ser que tenha uma pequena confusão a letra c é para itens de coleção a letra d é pra referência objeto a letra b é o operador é de maior
o poder do relacional e o ponto era a resposta se fosse cobrada na linguagem java e vamos agora a última questão a questão número 10 também uma questão fresquinho a questão muito recente do cap pt e até o seguinte segundo deitou em programação junina do objeto o conceito que permite inscrever programas que processam objetos que compartilham a mesma superclasse direta e indiretamente como se todos fossem objetos dessa super classe é conhecido como dá uma olhada aqui do lado muita atenção essa questão é bem maldosa também a marinha é um pouco mais maldosas aeronáutica apesar de
na aeronáutica cai muito mais questões em relação à programação de cada objeto a marinha tem uma maldade muito maior em seu coração presta atenção na resposta pausa e já já a gente volta se você é um gafanhoto que está estudando somente aqui pelo curso em vídeo você ficou uma dúvida tremenda em relação a essa questão não foi mesmo isso porque quando a gente fez aqui o curso eu escolhi por mostrar somente dois tipos de polimorfismo o polimorfismo de sobreposição e o polimorfismo de sobrecarga só que existem outros tipos de polimorfismo no caso da teoria básica
de programação orientada a objetos são considerados também o polimorfismo de inclusão e o povo por um fio de substituição de tipos isso que a gente está cobrando aqui isso que a marinha resolveu cobrar aqui foi o pole não fugiu à substituição de tipos então você com certeza ficou mais confuso segunda foi a faculdade o segundo grau e viu os outros tipos de polimorfismo você respondeu com uma facilidade maior o que nós estamos cobrando aqui é o pulina fim de substituição de tipo ea letra b é o gabarito oficial e é isso que quero gafanhoto essas
foram as dez questões que eu separei pra vocês que cair nos anos com cursos de marinha e da aeronáutica só que agora é o seguinte muita gente me pede poxa guanabara bota em prática no exercício do voto todos esses conceitos que a gente viu de encapsulamento herança polimorfismo atributos métodos interface coloca tudo num exercício e é exatamente isso que a gente vai fazer durante as aulas 14 e aula 15 que são as duas últimas aulas do curso de programação era objeto se o curso está chegando ao fim e finalmente e pra isso eu preparei um
exercício prático e que você está fazendo agora neste exato momento que assistindo o vídeo está assistindo um vídeo obviamente está porque você tá me ouvindo isso pagando um vídeo no youtube então o que eu vou fazer aqui é o seguinte nós vamos implementar uma classe vídeo essa classe vídeo nós temos os atributos privados título o título do vídeo avaliação dele em relação a estrelinha leva em conta a nota o vídeo a quantidade de visualizações a quantidade de curtidas e se ele está ou não reproduzido se você perceber nessa classe ou não implementei ou não explicitei
nenhum método isso tem uma razão isso porque ela implementa uma interface que se chama ações vídeo e os métodos são play pause e like com suas três ações básicas que vão ser implementadas nas filhas isso porque a parte de cima é uma interface é só você dá uma olhadinha no estereótipo que está em cima colocado como interface e nós temos outra classe aqui que a classe gafanhoto que é você que está assistindo neste vídeo você tem o login e o total de vídeos que você conseguiu assistir e tem um método chamado viu mais um gafanhoto
ele vai ser dar de uma outra clássica 10ª classe abstrata que a classe pessoa que tem os atributos protegidos nome idade sexo experiência e tem um método de ganhar experiência então durante as aulas 14 na aula prática você vai colocá-la em java e php você vai implementar esse gráfico aqui esse apoio mas como é que o uno como é que eu junto vídeo com o aluno nesbitt de um gafanhoto você vai ter uma chance então essa junção vai ser feita só que na aula 15 nessa última aula onde nós vamos finalizar esse exercício completo daí
nós temos um diagrama de classe que ainda incompleto mas essa parte que está desenhada aqui que não está pontilhada ainda nós vamos implementar na prática encor linguagem você decide que aquele programa de televisão você vai escolher aqui você quer na linguagem php clique em cima do elefantinho você quer no java clique aqui embaixo na xícara você escolhe com a linguagem você vai querer implementar se você estiver no celular e não estiver conseguindo aplicar nessas duas imagens clique aqui em cima de interatividade e escolhe a playlist que você quer php ou java e escolhe a aula
14 b para poder ver a implementação desse exemplo que apareceu aqui alguns instantes atrás então esse tema da fã 18 coloque em prática abre o seu servidor no caso do php abril o netbeans no caso do java ou do php abre seu ambiente abre essa idéia e vamos colocar em prática escolhe agora sua aula e vamos colocar a mão na massa [Música]
Copyright © 2024. Made with ♥ in London by YTScribe.com