Baixe o app para aproveitar ainda mais
Prévia do material em texto
01 (1,00 ponto): Analise o código em Java apresentado a seguir. De acordo com o código, assinale a alternativa a seguir que representa corretamente o que aparece na tela de console ao final da execução do programa. Alternativas A) Marcada pelo aluno Lamp1 desligada, luz branca, tipo LED Lamp2 ligada, luz verde, tipo fluorescente Lamp3 ligada, luz vermelha, tipo incandescente. B) Lamp1 ligada, luz verde, tipo fluorescente Lamp2 desligada, luz branca, tipo LED Lamp3 ligada, luz vermelha, tipo incandescente. C) Lamp1 ligada, luz verde, tipo fluorescente Lamp2 desligada, luz branca, tipo fluorescente Lamp3 ligada, luz vermelha, tipo LED. D) Lamp1 desligada, luz branca, tipo LED Lamp2 ligada, luz verde, tipo incandescente Lamp3 ligada, luz vermelha, tipo fluorescente. E) Lamp1 desligada, luz vermelha, tipo LED Lamp2 ligada, luz verde, tipo fluorescente Lamp3 ligada, luz branca, tipo incandescente. 02 (1,00 ponto): Analise o código em Java apresentado a seguir. De acordo com o código Java apresentado, qual será a saída na tela de console da aplicação? Assinale a alternativa correta a seguir. Alternativas A) P8.ExcecaoSaldoInsuficienteAplicacao: PROBLEMA - C/C: 20 Saldo R$ 160.0 insuficiente para aplicacao de R$ 500.0 at P8.ContaCorrente.aplicar(ContaCorrente.java:21) at P8.Banco.main(Banco.java:10) ContaCorrente [Cta: 20, saldo = R$ 160.0, aplicacao = R$ 0.0] ContaCorrente [Cta: 10, saldo = R$ 100.0, aplicacao = R$ 0.0]. B) PROBLEMA - C/C: 10 Saldo R$ 80.0 insuficiente para aplicacao de R$ 500.0 ContaCorrente [Cta: 20, saldo = R$ 160.0, aplicacao = R$ 0.0] ContaCorrente [Cta: 10, saldo = R$ 80.0, aplicacao = R$ 0.0]. C) Gabarito da questão PROBLEMA - C/C: 20 Saldo R$ 160.0 insuficiente para aplicacao de R$ 500.0 ContaCorrente [Cta: 20, saldo = R$ 160.0, aplicacao = R$ 0.0] ContaCorrente [Cta: 10, saldo = R$ 100.0, aplicacao = R$ 0.0]. D) Marcada pelo aluno PROBLEMA - C/C: 20 Saldo R$ 160.0 insuficiente para aplicacao de R$ 500.0. E) ContaCorrente [Cta: 20, saldo = R$ 1460.0, aplicacao = R$ 500.0] ContaCorrente [Cta: 10, saldo = R$ 480.0, aplicacao = R$ 500.0]. 03 (1,00 ponto): O código a seguir descreve uma situação de uso de herança. Analise-o com atenção. Sobre o código apresentado, assinale a alternativa correta a seguir. Alternativas A) O código imprimirá C e A2, uma vez que na classe C apenas se sobrescreve o método print2(). B) O código imprimirá A e B, uma vez que a variável b foi declarada como B teste. C) Gabarito da questão O código imprimirá C e B, uma vez que a criação do objeto foi feita com new C(). D) Marcada pelo aluno Ao executar o código, será impresso A e A2, uma vez que o método printAll está na classe A. E) O código não compila, pois faltam as anotações @Override. 04 (1,00 ponto): Na Programação Orientada a Objetos (POO), a herança é um mecanismo que possibilita que uma classe mais genérica seja especializada em outras classes, permitindo o reuso de código. Sobre a relação de herança em Java, assinale a alternativa correta a seguir. Alternativas A) É implementada como uma interface, com o objetivo de servir como modelo para suas classes herdeiras. B) É implementada no Java quando utilizamos a palavra-chave abstract, declarada antes do nome dos atributos e métodos de uma classe. C) É uma alternativa ao polimorfismo, pois proporciona a reutilização de código entre classes herdeiras. D) Marcada pelo aluno É implementada no Java quando utilizamos a palavra-chave extends, declarada logo após o nome da classe. E) É uma extensão do encapsulamento, usada para reforçar o uso dos modificadores de acesso a métodos e atributos. 05 (1,00 ponto): Em qualquer linguagem de programação, existem palavras-chave que identificam diferentes elementos, como comandos e tipos de dados. Em Java, o que se pode afirmar sobre a palavra-chave static? Assinale a alternativa correta. Alternativas A) Deve ser usada na declaração do método main, para indicar que esse é o ponto inicial de execução de um programa em Java. B) Deve ser usada para identificar um método que será invocado a partir dos objetos da classe, como no exemplo: objeto.metodostatic();. C) Marcada pelo aluno Quando é usada na declaração de um atributo, significa que o valor desse atributo será o mesmo para todos os objetos da classe. D) Quando usada na declaração de atributos, significa que eles serão compartilhados por outras classes. E) Deve ser usada na declaração dos atributos que são acessíveis, ou visíveis, apenas dentro da própria classe. 06 (1,00 ponto): A persistência de objetos permite que os dados desse objeto, ou seus atributos, sobrevivam ao programa que os gerou. Esses dados podem ser recuperados, como objetos, mesmo após o encerramento do seu programa, pois eles estão armazenados em algum arquivo. Considerando o contexto apresentado, analise as asserções a seguir e a relação proposta entre elas. I. Nem todo objeto que suporta a interface io.Serializable pode ser gravado em fluxos (streams) para arquivos. PORQUE II. Qualquer objeto, incluindo string e array, é escrito com método writeObject. A respeito das asserções apresentadas, assinale a alternativa correta a seguir. Alternativas A) A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. B) Gabarito da questão A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. C) As asserções I e II são proposições falsas. D) As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I. E) Marcada pelo aluno As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I. 07 (1,00 ponto): Os comandos condicionais, ou de desvio, permitem alterar o fluxo de execução de um código, dependendo do resultado de uma condição, que pode ser verdadeira ou falsa. Verifique como é utilizado o condicional do código Java a seguir. O que aparecerá impresso após a execução? Assinale a alternativa correta. Alternativas A) Fim = 3 B) Marcada pelo aluno Fim = -25 C) Fim = -7 D) Fim = 7 E) Fim = -10 08 (1,00 ponto): Interfaces e classes abstratas permitem a criação de métodos sem implementação, que serão utilizados pelas classes filhas, por meio de polimorfismo. Sobre esses conceitos, analise o código a seguir. Assinale a alternativa correta. Alternativas A) A classe ClasseAbstrata deveria implementar apenas B, pois, como a classe A também possui um método chamado m1, haverá conflito na declaração. B) A declaração implements A, B indica que a interface B é filha da interface A. C) Marcada pelo aluno A classe ClasseAbstrata está incorreta, pois não contém nenhum método abstrato. D) Gabarito da questão A classe “classe” está incompleta e não compilará, para complementá-la seria necessário implementar o método m2(). E) A declaração implements A, B está incorreta, uma vez que as classes podem ter apenas uma única interface pai. 09 (1,00 ponto): Para salvar um objeto de uma classe Java em um arquivo, é preciso transformar esse objeto em uma sequência de bytes. Dessa forma, ele poderá ser armazenado em disco, ação que é realizada quando o programa transmite o objeto serializado para um arquivo, via um stream (fluxo de bytes). O stream, portanto, é um objeto de transmissão, no qual um fluxo sequencial de dados é transmitido de uma origem para um destino. Existem dois tipos de stream: o FileOutputStream, que permite a gravação de dados em arquivo, e o FileInputStream, que permite a leitura de dados de um arquivo. Juntos, eles são responsáveis por manipular objetos em uma sequência de bytes. Por fim, existem duas classes chamadas ObjectInputStream e ObjectOutputStream, que são responsáveis por recuperar e gravar, respectivamente, a estrutura do objeto serializado, obtido de um stream. Com base no texto sobre gravação e recuperação de objetos, assinale a alternativa a seguir que indica corretamente qual é o requisito essencial para que os objetos de uma determinada classe possam ser convertidos em um fluxo de bytes, de forma a serem armazenados e recuperados de arquivos. AlternativasA) A classe dos objetos a serem gravados e recuperados deve estender das classes ObjectInputStream e ObjectOutputStream. B) A classe dos objetos a serem gravados e recuperados precisa implementar as interfaces ObjectInputStream e ObjectOutputStream. C) A classe dos objetos a serem gravados e recuperados precisa ser herdeira das classes FileOutputStream e FileInputStream. D) Marcada pelo aluno A classe dos objetos a serem gravados e recuperados deve implementar a interface java.io.Serializable. E) A classe dos objetos a serem gravados e recuperados deve estender a interface java.io.Serializable. 10 (1,00 ponto): Analise o código em Java apresentado a seguir. Com base nos códigos apresentados, assinale quais as três últimas linhas que serão apresentadas na tela de console após a execução do código. Alternativas A) Valor de cr: 3. Valor de cm: 6. Pedagio Frota: R$ 43.5. B) Valor de cr: 2. Valor de cm: 8. Pedagio Frota: R$ 49.0. C) O programa não executa, pois as adições de objetos das linhas 13 a 18 da classe transportadora estão incorretas; deveriam ser objetos da classe veiculo. D) O programa não executa, pois, a classe veiculo não retorna um valor para pedágio, uma vez que seu método pedagio() é abstrato. E) Marcada pelo aluno Valor de cr: 3. Valor de cm: 8. Pedagio Frota: R$ 53.5.
Compartilhar