Buscar

Aula 9 e 10 Programação I Exercicios COM GABARITO (1) (1)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

Aula 9 e 10 Programação I
HERANÇA
	Na implementação de uma subclasse, o programador não quer que um método herdado funcione da forma como está definido na superclasse. Para conseguir tal efeito, qual recurso o programador deve utilizar?
	
	
Sobrecarga de métodos.
Métodos abstratos.
Sobrescrita de métodos.
Construtores.
Métodos estáticos.
	
	Qual a palavra-chave da linguagem Java que indica que uma classe é subclasse de outra?
	
	
protected
static
abstract
implements
extends
	
	Uma superclasse é uma classe pai. Todas subclasses, isto é classe filhas, herdam da classe pai o seguinte:
Atributos e métodos
Apenas métodos
Apenas atributos
Não herdam nada
nenhuma das anteirores
Qual o efeito do uso do modificador final aplicado a classes?
	
	
A classe deve ser estendida.
A classe não pode ser estendida.
A classe não pode implementar interfaces.
A classe pode conter métodos abstratos.
A classe não pode conter métodos estáticos.
	
	Enquanto programamos em Java, há a necessidade de trabalharmos com várias classes. Muitas vezes, classes diferentes têm características comuns, então, ao invés de criarmos uma nova classe com todas essas características, usamos as características de um objeto ou classe já existente.
Julgue as afirmativas a seguir:
I-Podemos resolver o problema acima utilizando o conceito de herança. Herança é, portanto, uma classe derivada de outra classe. 
II-Um exemplo de herança poderia ser o seguinte:
Uma classe chamada Eletrodomestico. Se nela estão definidos os atributos: ligado (boolean), voltagem (int) e consumo (int), significa que, se desejarmos usar uma outra classe chamada TV, podemos dizer que TV deriva de Eletrodomestico, ou seja, a classe TV possui todas as características da classe Eletrodomestico, além de ter suas próprias características.
III- Para fazermos uma classe herdar as características de uma outra, usamos a palavra reservada extends logo após a definição do nome da classe. Dessa forma:
class NomeDaClasseASerHerdada extends NomeDaClasseASerCriada
IV-Java permite que uma classe herde apenas as características de uma única classe, ou seja, não pode haver heranças múltiplas. Porém, é permitido heranças em cadeias, por exemplo: se a classe Mamifero herda a classe Animal, quando fizermos a classe Cachorro herdar a classe Mamifero, a classe Cachorro também herdará as características da classe Animal.
Estão corretas somente:
 
	
	
I, II, IV
Todas as afirmações
II, III, IV
I, II, III
I, III, IV
	
	Considere o trecho de código abaixo:
 
public class Carro extends Veiculo {
private int qtdPassageiros;
private int capacidadeBagagem;
}
 
Julgue as afirmativas a seguir:
 
I-No exemplo dado, Carro herda os atributos e métodos de Veículo
II-Carro herda somente os atributos de Veiculo
III-A herança entre duas classes é definida por meio da palavra reservada extends, usada na definição da subclasse.
 
Estão corretas somente:
	
	
I, III
I
II, III
II
III
	
Considere a figura a seguir:
	Implemente o código em Java para cada classe (Transporte, Terrestre e Automovel), usando o conceito de herança e mostrando os atributos de cada classe.
	
	Gabarito:
public class Transporte{ private int capacidade; }
 
public class Terrestre extends Transporte{ private int numRodas; }
 
public class Automovel extends Terrestre{ private String cor; private int numPortas; private String placa; }
	
	Considere o trecho abaixo:
public class Gerente extends Funcionario {
        private int senha;
        private int numeroDeFuncionariosGerenciados;
        public boolean autentica(int senha) {
            if (this.senha == senha) {
                System.out.println("Acesso Permitido!");
                return true;
            } else {
                System.out.println("Acesso Negado!");
                return false;
            }
        }
        // setter da senha omitido
    }
I- Em Java é possível relacionarmos uma classe de tal maneira que uma delas herda tudo que a outra tem. Isto é uma relação de classe mãe e classe filha. No código fornecido, o Gerente possui tudo que um Funcionario tem, ou seja, ele é uma extensão de Funcionario
II- A classe Gerente herda todos os atributos e métodos da classe mãe, ou seja,  Funcionario. Para ser mais preciso, ela também herda os atributos e métodos privados, porém não consegue acessá-los diretamente. Para acessar um membro privado na filha indiretamente, seria necessário que a mãe expusesse um outro método visível que invocasse esse atributo ou método privado.
III- Funcionario é a superclasse de Gerente, e Gerente é a subclasse de Funcionario. Todo Gerente é um Funcionário. Outra forma é dizer que Funcionario é classe mãe de Gerente e Gerente é classe filha de Funcionario.
IV- Se precisássemos acessar os atributos que herdamos, de forma a não deixar os atributos de Funcionario, public, (pois dessa maneira qualquer um poderia alterar os atributos dos objetos deste tipo), poderíamos usar um outro modificador de acesso, o protected, que fica entre o private e o public. Um atributo protected só pode ser acessado (visível) pela própria classe, por suas subclasses, e pelas classes que se encontram no mesmo pacote, como no exemplo dado abaixo:
  public class Funcionario {
        protected String nome;
        protected String cpf;
        protected double salario;
        // métodos devem vir aqui
    }
Estão corretas somente:
 
	
	
Todas as afirmações
I, II, III
II, III, IV
I, II, IV
I, III, IV
	
	Fale brevemente sobre os atributos private e protected quanto à sua visibilidade.
	
	Gabarito:
Atributos private : visíveis na classe onde estão definidos.
Atributos protected : visíveis na classe, subclasses e classes do mesmo pacote.
	
	Julgue as afirmativas a seguir:
 
I-Se uma classe (classe filha ou subclasse) herda de apenas uma superclasse (classe mãe), temos herança simples.
II-Se uma classe (classe filha ou subclasse) herda de diversas superclasses, temos herança múltipla.
III-Para definir a herança entre duas classes devemos usar a palavra reservada extends na definição da subclasse.
IV-Um exemplo de herança simples poderia ser um carro anfíbio, o qual é um tipo de carro e um tipo de barco, ao mesmo tempo.
Estão corretas somente:
	
	
I, II, IV
I, II, III
II, III, IV
I, III, IV
Todas
	
	Considere as seguintes afirmativas a seguir:
I-Um retângulo é um quadrilátero, ou seja, retângulo é um tipo específico de quadrilátero. 
II-Quadrilátero seria a superclasse, enquanto retângulo seria a subclasse. Dessa forma, podemos também afirmar que um quadrilátero é um retângulo
III-Toda subclasse é um objeto da sua superclasse e vice-versa.
IV-A subclasse é mais específica do que sua superclasse
 
Estão corretas somente:
	
	
I, IV
I, II, III
I, III, IV
I, III
I, II, IV
	
HERANÇA E POLIMORFISMO
	Na POO, é possível que um objeto assuma vários comportamentos diferentes durante a execução da aplicação. Tal recurso é chamado de polimorfismo. Qual dos conceitos a seguir não está intimamente ligado ao conceito de polimorfismo?
	
	
Alocação de memória
Hierarquia de classes
Implementação de interfaces
Sobrecarga de métodos
Sobrescrita de métodos
	
_1633370503.unknown
_1633370511.unknown
_1633370515.unknown
_1633370517.unknown
_1633370518.unknown
_1633370516.unknown
_1633370513.unknown
_1633370514.unknown
_1633370512.unknown
_1633370507.unknown
_1633370509.unknown
_1633370510.unknown
_1633370508.unknown
_1633370505.unknown
_1633370506.unknown
_1633370504.unknown
_1633370487.unknown
_1633370495.unknown
_1633370499.unknown
_1633370501.unknown
_1633370502.unknown
_1633370500.unknown
_1633370497.unknown
_1633370498.unknown
_1633370496.unknown
_1633370491.unknown
_1633370493.unknown
_1633370494.unknown
_1633370492.unknown
_1633370489.unknown
_1633370490.unknown
_1633370488.unknown
_1633370479.unknown
_1633370483.unknown
_1633370485.unknown
_1633370486.unknown
_1633370484.unknown
_1633370481.unknown_1633370482.unknown
_1633370480.unknown
_1633370475.unknown
_1633370477.unknown
_1633370478.unknown
_1633370476.unknown
_1633370473.unknown
_1633370474.unknown
_1633370471.unknown
_1633370472.unknown
_1633370470.unknown
_1633370469.unknown

Outros materiais