Prévia do material em texto
Pergunta 1 0,25 em 0,25 pontos “O primeiro requisito de uma recuperação bem-sucedida após um erro é que os clientes tomem nota de qualquer notificação de erro que eles recebem. Isto pode parecer óbvio, mas é comum para um programador supor que uma chamada de método não falhará e assim não se incomoda em verificar o valor do retorno.”. (BARNES, D. J.; KOLLING, M. Programação orientada a objetos em Java . São Paulo: Pearson Prentice Hall, 2004. p. 302). A linguagem Java prevê como contornar erros de execução. Neste sentido, qual a classe que trata todas as exceções de erro de um programa? Resposta Selecionada: . java.lang.Throwable. Resposta Correta: .java.lang.Throwable. Feedback da resposta: Resposta correta. Segundo os fundamentos da linguagem orientada a objetos Java, a classe raiz de todas as exceções é java.lang.Throwable, objetos que sejam dessa classe, ou de suas classes derivadas. Pergunta 2 0,25 em 0,25 pontos “O paradigma da orientação a objetos é um processo conceitual independente da linguagem de programação. O desenvolvimento baseado em objetos é fundamentalmente uma forma de pensar e não uma técnica de programação. Muitos sistemas organizacionais modernos têm sido construídos através do paradigma da orientação a objetos (OO). A organização e a representação dos dados são feitas através da linguagem UML (Unified Modeling Language), que é uma linguagem visual utilizada para modelar softwares no paradigma da OO.”. (CASTRO, F. R.; CRUZ, F. M.; ODDONE, N. E. O paradigma da orientação a objetos, a linguagem unificada de modelagem (UML) e a organização: um estudo de caso de um sistema para bibliotecas. Inf. Inf ., Londrina, v. 18, n. 1, p. 82-105, 2013. p. 84). Pelo enunciado, podemos compreender uma definição abrangente da orientação a objeto. No sentido da relação das classes e dos acessos aos métodos, qual afirmativa abaixo é verdadeira? Resposta Selecionada: .Muitas classes podem ter acesso a um mesmo método, porém, cada classe executa esse método de maneira diferente. Resposta Correta: .Muitas classes podem ter acesso a um mesmo método, porém, cada classe executa esse método de maneira diferente. Feedback da resposta: Resposta correta. Seguindo os fundamentos de orientação a objeto, as classes podem ter acesso a um mesmo método de outras classes, sendo que cada classe executa esse método de maneira diferente. Pergunta 3 0,25 em 0,25 pontos “As aplicações gráficas sempre foram uma opção popular para a orientação a objeto. Assim, embora não seja muito verdadeiro que a orientação a objeto ‘per se’ torna os softwares mais utilizáveis, a realidade é que uma boa interface gráfica do usuário torna o software mais utilizável e que a orientação a objeto pode ser a melhor abordagem para a construção de bibliotecas de software que suportem GUIs.”. (PAGE-JONES, M. Fundamentos do desenho orientado a objeto com UML . São Paulo: Makron Books, 2001. p. 72). Podemos compreender a importância da interface gráfica nos códigos desenvolvidos em linguagens orientadas a objeto. Neste sentido , Qual a interface gráfica que fornece uma lista de itens e possibilita ao usuário selecionar um item, ou digitar para procurar? Resposta Selecionada: . ComboBox. Resposta Correta: .ComboBox. Feedback da resposta: Resposta correta. ComboBox é a interface que fornece uma lista de itens, dando a possibilidade ao usuário de selecionar um item, como também digitar para procurar. Pergunta 4 0,25 em 0,25 pontos “A interface com o usuário (frequentemente uma interface gráfica como usuário) é ocasionalmente referida apenas como interface, mas o Java também tem uma construção de linguagem chamada interface que é relacionada mas distinta. É importante distinguir entre os diferentes significados da palavra interface em um contexto particular, pois a palavra interface tomará diversos significados em cenários diferentes na programação orientada a objeto ”. (BARNES, D.J.; KOLLING, M. Programação orientada a objetos em Java . São Paulo: Pearson Prentice Hall, 2004. p. 113). Pela citação foi possível compreender as diversas definições de interface em orientação a objeto e na linguagem Java. A interface gráfica no Java é realizada pela biblioteca Swing . Neste sentido, quais as afirmativas abaixo são falsas ou verdadeiras sobre os componentes da interface gráfica da biblioteca Swing ? I. ( ) JComboBox exibe texto não editável ou ícones. II. ( ) JTextField fornece uma lista de itens para selecionar um item . III. ( ) JCheckBox – especifica uma opção que pode ser, ou não, selecionada. IV. ( ) JList exibe relação para se selecionar vários itens. Agora, assinale a alternativa correta. Resposta Selecionada: .F, F, V, V. Resposta Correta: .F, F, V, V. Feedback da resposta: Resposta correta. O pacote Swing é uma evolução do pacote AWT. Além de seus próprios componentes, esse pacote possui quase todos os componentes que já existiam no pacote AWT, porém com uma interface gráfica mais evoluída e com maiores efeitos. Pergunta 5 0,25 em 0,25 pontos “Examinamos a estrutura interna de uma classe com alguns detalhes. Vimos que a classe tem uma pequena camada externa que dá nome à classe um corpo interno mais substancial contendo campos, um construtor e vários métodos. Os campos são utilizados para armazenar dados que permitem aos objetos manter aos objetos manter um estado. Os construtores são utilizados para configurar o estado inicial quando um objeto é criado.”. (BARNES, D. J.; KOLLING, M. Programação orientada a objetos em Java. São Paulo: Pearson Prentice Hall, 2004. p. 32). O conceito de camadas está inserido em vários aspectos na orientação a objeto. Quando são desenvolvidas as interfaces com o usuário são utilizadas interfaces que são divididas em camadas. Neste sentido, o que é a camada de apresentação? Resposta Selecionada: .Interage diretamente com o usuário e é por meio dela que se têm classes responsáveis por implementar a interface do sistema e capturar interações do usuário. Resposta Correta: .Interage diretamente com o usuário e é por meio dela que se têm classes responsáveis por implementar a interface do sistema e capturar interações do usuário. Feedback da resposta: Resposta correta. A camada de apresentação é aquela que tem como objetivo interagir diretamente com o usuário, e as classes responsáveis por implementar a interface do sistema. Pergunta 6 0,25 em 0,25 pontos “O Java divide as classes de exceção em duas categorias: exceções verificadas e exceções não verificadas. Toda as subclasses da classe-padrão Java RuntimeException são exceções não verificadas; todas as outras subclasses de Exception são exceções verificadas. Ligeiramente simplificada, a diferença é essa: exceções verificadas são concebidas para os casos em que o cliente deve esperar que uma operação possa falhar.”. (BARNES, D.J.; KOLLING, M. Programação orientada a objetos em Java . São Paulo: Pearson Prentice Hall, 2004. p. 290). Pela citação foi possível compreender o tratamento que o Java sobre as exceções. Neste sentido, considerando as hierarquias que existem entre as classes de exceção do Java, quais as afirmativas abaixo são falsas ou verdadeiras? I. ( ) A classe raiz de todas as exceções é java.lang.Throwable . II. ( ) A classe java.lang.InputMismatchException é tratada no processamento aritmético. III. ( ) A classe Throwable tem as subclasses java.lang.Exception e java.lang.Error . IV. ( ) A classe java.lang.NullPointerException é um acesso de um arranjo fora do limite. Agora, assinale a alternativa queapresenta a sequência correta. Resposta Selecionada: .V, F, V, V. Resposta Correta: .V, F, V, V. Feedback da resposta: Resposta correta. Segundo os fundamentos da linguagem orientada a objeto Java, a classe raiz de todas as exceções é java.lang.Throwable e a classe Throwable tem as subclasses java.lang.Exception e java.lang.Error. Pergunta 7 0 em 0,25 pontos “O requisito é que o chamador de um método que lança uma exceção verificada deve estar preparado para lidar com a exceção. Isso normalmente significa escrever um handler de exceção na forma de um bloco try .”. (BARNES, D. J.; KOLLING, M. Programação orientada a objetos em Java . São Paulo: Pearson Prentice Hall, 2004. p. 296). O encerramento abrupto do programa mediante o lançamento de uma exceção pode ser evitado com o tratamento da mesma, o que é chamado de captura de exceção. Para realizar esse tratamento das exceções em Java são utilizados os comandos try e catch . Analise abaixo é o comportamento dos comandos try e catch . I. A instrução catch lida com as exceções para que o programa mantenha sua execução consistente, mesmo que exceções ocorram. II. As linhas de código que serão executadas, quando a exceção for capturada, serão colocadas no bloco try . III. No bloco try são colocadas todas as linhas de código que possam vir a lançar uma exceção. IV.O bloco finally permite que um bloco de comandos seja sempre executado após a execução de um bloco de catch e/ou de try . Agora, assinale a alternativa que apresenta as afirmações corretas. Resposta Selecionada: [Sem Resposta] Resposta Correta: .I, II e IV. Feedback da resposta: Resposta incorreta. O correto na construção de pacotes de exceção é quando as linhas de código que serão executadas, quando a exceção for capturada, serão colocadas no bloco catch e não no try. Pergunta 8 0,25 em 0,25 pontos “O NetBeans IDE oferece suporte abrangente e de primeira classe para as tecnologias e melhorias de especificação Java mais recentes, antes de outros IDEs. É o primeiro IDE gratuito a oferecer suporte a JDK 8, JDK 7, Java EE 7, inclusive a seus aprimoramentos de HTML5 relacionados, e a JavaFX2”. ( NetBeans IDE Features . Disponível em: https://netbeans.org/features/web//web-app_pt_BR.html . Acesso em: 13 set. 2019.) As bibliotecas Java oferecem uma série de facilidades de interface com o usuário. Neste sentido, qual o componente relacionado ao Swing do Java que permite agrupar os componentes que fazem parte da tela? Resposta Selecionada: .JPanel. Resposta Correta: .JPanel. Feedback da resposta: Resposta correta. JPanel é o objeto da biblioteca Java que permite agrupar os componentes que fazem parte da tela. Pergunta 9 0 em 0,25 pontos “Uma característica de um bom projetista de software é a capacidade de pensar à frente. O que pode ser mudado? O que podemos assumir, com alguma segurança, que permanecerá inalterado durante toada a vida do programa? Assumimos e codificamos na maior parte das nossas classes que o jogo será executado como um jogo baseado em texto e em terminal de saída. Mas isto será sempre assim?”. (BARNES, D. J.; KOLLING, M. Programação orientada a objetos em Java. São Paulo: Pearson Prentice Hall, 2004. p. 184). Podemos compreender a questão da qualidade de desenvolvimento de código. Neste sentido, esta característica também é necessária ao se tratar da interface na orientação a objeto. Portanto, quando tratamos de interface, quais as afirmativas abaixo são verdadeiras ou falsas? I. ( ) Em Java não é possível criar herança múltipla. II. ( ) Interface é um contrato em que as classes devem obedecer. III. ( ) Implementar significa assinar um contrato dos atributos. IV. ( ) Usando interfaces não se segue um padrão de projeto. Agora, assinale a alternativa que apresenta as a alternativa correta. Resposta Selecionada: .F, V, V, F. Resposta Correta: .V, V, F, F. Feedback da resposta: Resposta incorreta. A implementação assina um contrato com os métodos, e não com os atributos e o uso de interface segue um padrão de projeto, pois isso está nos fundamentos de orientação a objetos e da linguagem Java. Pergunta 10 0,25 em 0,25 pontos “Uma variável de um tipo objeto contém uma referência (ou ponteiro) a um objeto. Atribuições e passagem de parâmetros têm semântica de referência (isto é, a referência é copiada, não o objeto). Depois de atribuir uma variável a uma outra, as duas variáveis referenciam o mesmo objeto. As duas variáveis são conhecidas como apelidos para o mesmo objeto. As classes são os templates para objetos, definindo os campos e os métodos que cada instância possui.”. (BARNES, D. J.; KOLLING, M. Programação orientada a objetos em Java. São Paulo: Pearson Prentice Hall, 2004. p. 352). Os ponteiros representam uma definição fundamental na orientação a objeto. Muitas vezes (na linguagem Java), ocorre um erro em tempo de execução quando se aponta para um objeto nulo. Existe uma hierarquia no tratamento de erros e exceção. Qual é a forma correta desta hierarquia? Resposta Selecionada: .Throwable > Exception > RunTimeException > NullPointerException. Resposta Correta: .Throwable > Exception > RunTimeException > NullPointerException. Feedback da resposta: Resposta correta. Na linguagem Java, a ordem correta é Throwable > Exception > RunTimeException > NullPointerException.