Baixe o app para aproveitar ainda mais
Prévia do material em texto
Linguagem de Programação Avaliando aprendizado (aula 6) 1a Questão (Ref.: 201509162147) Analisando o código abaixo, assinale a alternativa que indique a explicação correta do funcionamento dos métodos setEstado(boolean estado) e getEstado(): public class Lampada { private boolean estado; //ligado ou não public Lampada(){ this.estado = false; } public void setEstado(boolean estado){ this.estado = estado; } public boolean getEstado(){ return this.estado; } } Os dois métodos estão errados, pois não estão atualizando o atributo estado da classe. O método setEstado está definindo um valor para o estado da lâmpada ; o método getEstado está retornando o estado atual da lâmpada . O método getEstado está definindo um valor para o estado da lâmpada ; o método setEstado está retornando o estado atual da lâmpada. O método getEstado para definir um valor para o atributo estado deveria ser do tipo void, como o método setEstado. O método setEstado para definir um valor para o atributo estado deveria ser do tipo boolean, como o método getEstado. 2a Questão (Ref.: 201509162137) Em Java temos a possibilidade de proteger os membros de uma classe. Chamamos este processo de: herança. sobrecarga. encapsulamento. threads. polimorfismo. 3a Questão (Ref.: 201509162139) Em Java pode-se utilizar diferentes tipos de modificadores de acesso para seus atributos e métodos, dependendo da necessidade da aplicação que está sendo desenvolvida. É correto afirmar sobre os modificadores de acesso usados na declaração de atributos: O modificador de acesso final permite que todos os objetos que o usam possam alterá-lo; já o modificador de acesso public torna o atributo visível pela própria classe ou suas subclasses, e o modificador de acesso private permite que só a classe manipule seus atributos. O modificador de acesso protected permite que todos os objetos que o usam possam alterá-lo; já o modificador de acesso public torna o atributo visível pela própria classe ou suas subclasses, e o modificador de acesso private permite que só a classe manipule seus atributos. O modificador de acesso protected permite que todos os objetos que o usam possam alterá-lo; já o modificador de acesso public torna o atributo visível pela própria classe ou suas subclasses, e o modificador de acesso final permite que só a classe manipule seus atributos. O modificador de acesso public permite que todos os objetos que o usam possam alterá-lo; já o modificador de acesso protected torna o atributo vísivel pela própria classe ou suas subclasses, e o modificador de acesso private permite que só a classe manipule seus atributos. O modificador de acesso private permite que todos os objetos que o usam possam alterá-lo; já o modificador de acesso public torna o atributo visível pela própria classe ou suas subclasses, e o modificador de acesso protected permite que só a classe manipule seus atributos. 4a Questão (Ref.: 201509386359) Analise o código abaixo: public class Notebook { private String marca; private String modelo; public Notebook(String marca, String modelo) { this.marca=marca; this.modelo=modelo; } } Podemos afirmar sobre esta classe: os atributos estão públicos o método construtor não está implementado possui o método main - principal a classe Notebook possui dois atributos encapsulados e privados e apenas o método construtor possui 5 atributos públicos 5a Questão (Ref.: 201509359334) Na Programação Orientada a Objetos podem-se definir as visibilidades dos métodos e atributos. Quanto a essa característica é correto afirmar que: o acesso aos atributos privados e aos métodos públicos só pode ser feito a partir dos métodos membros da classe os métodos privados e os atributos protegidos podem ser acessados a partir dos métodos de qualquer classe os métodos protegidos podem ser acessados a partir dos métodos de qualquer classe, desde que instanciada na mesma aplicação o acesso aos atributos e aos métodos privados só pode ser feito a partir dos métodos membros da classe os métodos públicos e os atributos protegidos só podem ser acessados a partir dos métodos da própria classe ou de classes derivadas 6a Questão (Ref.: 201509359339) (ENADE/2011) A programação orientada a objeto não é apenas uma forma de programar, é também um jeito de pensar em um problema utilizando conceitos do mundo real e, não somente conceitos computacionais. Considerando os conceitos da programação orientada a objetos, analise as afirmações abaixo: I. O objeto tem determinadas propriedades que o caracterizam e que são armazenadas no próprio objeto. As propriedades de um objeto são chamadas de instâncias. II. As mensagens são informações enviadas ao objeto para que ele se comporte de uma determinada maneira. Um programa orientado a objetos em execução consiste em envios, interpretações e respostas às mensagens. São os métodos, os procedimentos residentes nos objetos, que determinam como eles irão atuar ao receber as mensagens. III. A herança é um mecanismo para o compartilhamento de métodos e atributos entre classes e subclasses, permitindo a criação de novas classes através da programação das diferenças entre a nova classe e a classe-pai. IV. O encapsulamento é um mecanismo que permite o acesso aos dados de um objeto somente através dos métodos desse. Nenhuma outra parte do programa pode operar sobre os dados do objeto. A comunicação entre os objetos é feita apenas através de troca de mensagens. É correto apenas o que afirma em: I, II e IV III e IV I e II II, III e IV I e III 7a Questão (Ref.: 201509362724) Seja a classe: public class Carro { private String cor; private boolean estadoMotor; public void ligaMotor() {estadoMotor=true;} public void desligaMotor( ) {estadoMotor=false;} public boolean motor( ){ return estadoMotor;} } Se o código abaixo for executado, pode-se dizer que: public class Teste { public static void main(String[] args) { Carro c=new Carro(); c.cor="Preto"; } } Será gerado erro de execução pois o tipo do atributo está em desacordo com o valor atribuído. Será gerado erro de compilação pois há erro de sintaxe em: c.cor="Preto"; O código é executado normalmente, pois c é uma instancia da mesma classe que o atributo. Será gerado um erro de compilação, pois o atributo é private. O objeto c não pode ser instanciado, pois não há construtor na classe. 8a Questão (Ref.: 201509186500) Como se declara um método estático em Java? public static void exemploMetodo() {} public void exemploMetodo() {} static exemploMetodo() {} static void public exemploMetodo() {} public void static exemploMetodo() {} Avaliando aprendizado (aula 7) 1a Questão (Ref.: 201509162671) Generalização é o mecanismo pelo qual uma classe (sub-classe) pode estender outra classe (super-classe), aproveitando seus comportamentos (métodos) e variáveis possíveis(atributos), também é conhecido como: (Fonte: adaptado IBM) Herança Agregação Abstração Classe Abstrata Associação 2a Questão (Ref.: 201509163067) class B extends A { int m1() { return a + b + c + d + e; } } public class A { static int a; public int b; int c; protected int d; private int e; } A classeB acima encontra-se no mesmo pacote que a classe A. O método m1 apresenta erro de compilação porque a seguinte variável não pode ser acessada diretamente: a c e b d 3a Questão (Ref.: 201509226078) Dentro do paradigma de programação orientada a objetos (POO), há um mecanismo pelo qual uma classe pode estender outra classe, aproveitando seus métodos e atributos. Assinale a alternativa que apresenta o nome desse mecanismo. polimorfismo. mensagem. encapsulamento. subclasse. herança. 4a Questão (Ref.: 201509407478) O componente do pacote javax.swing que permite ao usuário inserir dados, e também pode ser utilizado para exibir texto editável ou não editável é o: JTextBox JLabelText JTextField JListBox JComboBox 5a Questão (Ref.: 201509163122) Considere o seguinte código-fonte em linguagem Java: import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; public class Q4Class extends JFrame{ private JButton b; public static void main(String[] args) { JFrame f = new Q4Class (); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setSize(300, 200); f.setVisible(true); } public Q4Class (){ this.getContentPane().add(b = (new JButton("Clique aqui"))); b.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ ((JButton)e.getSource()).setText("OK"); } }); } } o argumento da chamada do método addActionListener para o objeto referenciado por b é uma classe interna anônima a chamada do método getSource() retorna uma referência da classe Object para o objeto ouvinte do evento de clique de botão, e essa referência é convertida para o tipo JButton para ser possível mudar o texto exibido no botão o programa não termina quando a janela é fechada porque não foi adicionado um WindowListener ao objeto referenciado por f no método main o código não executará, com erro no construtor o símbolo b não poderia ser referenciado dentro do método main porque este não faz parte da classe Q4Class 6a Questão (Ref.: 201509362730) Os componentes gráficos mais comuns estão frequentemente prontos e presentes no pacote Swing. Para montar as telas que são específicas de um projeto, é necessário compor alguns componentes mais básicos, como JFrames, JPanels, JButtons, etc. Criar um componente do Swing é bastante simples, o comando para criar um botão é: JFrame.botao = new.JButton("sair"); JButton botao = new JButton("sair"); JButton botao = new JFrame("sair"); JButton.botao = new JButton("sair"); JFrame botao = new JButton("sair"); 7a Questão (Ref.: 201509359329) Considere uma classe ContaBancária e suas duas subclasses ContaCorrente e ContaPoupança, cada uma das três com o método AplicarJuros. A redefinição do método AplicarJuros nas duas subclasses, cada uma com detalhes de implementação diferentes com a mesma interface, caracteriza o princípio denominado na orientação a objetos como: Herança Abstração Polimorfismo Encapsulamento Sobrecarga Avaliando aprendizado (aula 8) 1a Questão (Ref.: 201509362736) A JOptionPane é a classe mais simples do Swing, esta classe mostra janelinhas de mensagens, confirmação e erros, entre outras. Marque a alternativa que apresenta o método mais apropriado de se mostrar uma mensagem para o usuário. JOptionPane.showFileChooser(null, "Minha mensagem!"); JOptionPane.showQuestionMessage(null, "Minha mensagem!"); JOptionPane.showConfirmDialog(null, "Minha mensagem!"); JOptionPane.showMessageDialog(null, "Minha mensagem!"); JOptionPane.showInputDialog(null, "Minha mensagem!"); 2a Questão (Ref.: 201509407548) Ações como fechar janela ou controlar entrada de texto necessitam de tratamento de eventos. Por este motivo as interfaces gráficas criadas em Java necessitam de tratamento para suas funcionalidades. Analise as seguintes afirmativas: I- Em uma interface gráfica as acões que podem ser realizadas pelo usuário precisam ser mapeadas como eventos. II- Os eventos, no Java, são objetos e provêm de classes, possuindo métodos e atributos. III- Cada tipo de componente gráfico suporta um determinado conjunto de eventos. IV- Os eventos são categorizados por recurso (teclado e mouse) e por componente (janela, lista, combo, campo de texto etc). Marque a alternativa CORRETA: Todas as afirmativas são corretas. Apenas as afirmativas I e IV. Apenas as afirmativas II, III e IV. Apenas a alternativa I. Apenas as afirmativas I, II e III. 3a Questão (Ref.: 201509407459) Assinale a alternativa que completa corretamente as lacunas da afirmação a seguir: "Um diálogo de entrada capaz de receber entrada do usuário é exibido com o método __________ da classe _________ ." showMessageBox/JOptionBox showMessage/JOption showMessageDialog/JOptionPane showInputDialog/JOptionPane. showInputBox/JOptionBox 4a Questão (Ref.: 201509699615) Um estagiário de programação foi incumbido de verificar uma linha de código de um programa que apresentava uma tela de forma indesejada. JOptionPane.showInputDialog(null," "," ",JOptionPane.QUESTION_MESSAGE); Para corrigir é necessário conhecer o que se espera, respectivamente, nos campos entre aspas. Assinale a alternativa que define respectivamente. texto interno da caixa de leitura e o texto da barra de título. texto interno da caixa de leitura e o texto do campo texto. símbolo do tipo de mensagem e o tamanho a cor da caixa de texto. texto da barra de título e o texto interno da caixa de leitura. texto da barra de título e o texto interno do campo texto. 5a Questão (Ref.: 201509772727) A JOptionPane é a classe mais simples do Swing, esta classe mostra janelinhas de mensagens, confirmação e erros, entre outras. Marque a alternativa que apresenta o método mais apropriado de se mostrar uma mensagem para o usuário. JOptionPane.showConfirmDialog(null, "Minha mensagem!"); JOptionPane.showQuestionMessage(null, "Minha mensagem!"); JOptionPane.showInputDialog(null, "Minha mensagem!"); JOptionPane.showMessageDialog(null, "Minha mensagem!"); JOptionPane.showFileChooser(null, "Minha mensagem!"); 6a Questão (Ref.: 201509708556) Os componentes Swing podem gerar vários tipos de eventos diferentes. Quando um evento ocorre, o gerenciador de janelas cria um evento e passa para um tratador de eventos definido pelo programador. O fragmento de código responsável por implementar métodos dentro da interface ActionListener é: public void actionListenet(ActionEvent e) public void actionStateChanged(ActionEvent e) public void itemStateChanged(ActionEvent e) public void actionPerformed(ActionEvent e) public void itemPerformed(ActionEvent e) 7a Questão (Ref.: 201509703705) Na linguagem Java, quase todos os componentes propagam eventos. Estes eventos devem ser tratados em algum ponto do código da aplicação. Os eventos nunca são tratados no próprio componente. Para ligar o código do tratamento de eventos ao componente existem, no Java, um conjunto de interfaces chamadas: Listener Interface FlowLayout Container Action 8a Questão (Ref.: 201509708115) Supondo uma aplicaçãoque utiliza um botão (JButton) com tratamento de eventos implementado dentro da própria classe, sempre que este for pressionado, irá percorrer a sua lista interna de listeners, chamando para cada um, o método actionPerformed; Qual o nome do evento gerado pelo botão quando pressionado. ActionEvent getActionCommand addActionListener ActionPerformed ActionListener Avaliando aprendizado (aula 9) 1a Questão (Ref.: 201509699665) O tratamento de exceções na linguagem Java é caracterizado pelo encapsulamento das informações de um erro em um objeto que representa uma classe específica de erro. O uso de exceções permite separar a detecção da ocorrência de uma situação excepcional do seu tratamento, ao se programar um método em Java. Sobre o tratamento de exceções em Java, assinale a afirmativa INCORRETA. A cláusula catch nem sempre é executada. A cláusula try sempre é executada. As exceções em Java são fixas e não é possível definir novas exceções. A cláusula finally é sempre executada mesmo quando existente em um bloco try/catch. Uma exceção é sempre um objeto do tipo Throwable 2a Questão (Ref.: 201509407481) Uma exceção é uma indicação de um problema que ocorre durante a execução de um programa. O nome "exceção" dá a entender que o problema ocorre raramente, se a regra é que uma instrução execute geralmente de modo correto, então a exceção a regra é que um problema ocorra. Em muitos casos, o tratamento de exceção permite que: um programa seja travado e destravado a medida que as instruções forem sendo executadas. um programa continue executando como se nenhum problema tivesse sido encontrado. um programa seja executado apenas se não ocorrer nenhuma situação de exceção, independentemente de qual seja esta situação excepcional. um programa seja finalizado independetemente de haver ou não uma situação de exceção. um programa nunca seja executado se houver uma situação de exceção, independentemente de qual seja a situação de exceção. 3a Questão (Ref.: 201509362738) O Java fornece um mecanismo sofisticado para manipulação de erros que produz código eficiente e organizado, a isto chama-se Tratamento de Exceção.Com esse mecanismo os programadores detectam erros facilmente, sem precisar escrever código especial para testar os valores retornados. Sejam as seguintes sentenças referentes ao processo de Exceção em Java: I. Você deve colocar o bloco de código a ser protegido dentro de uma instrução try. II. Se houver algum erro em tempo de execução, o código será desviado para a instrução catch. III. Caso haja mais de uma exceção que deva ser verificada, podemos utilizar vários catch's diferentes, obedecendo a regra de que as exceções mais específicas devem vir primeiro. IV. O bloco do finally é sempre executado, com ou sem exceção. Marque a alternativa correta: Apenas a sentença I está correta. Apenas as sentenças I,II e III estão corretas. Todas as sentenças estão corretas. Apenas as sentenças I, III e IV estão corretas. Apenas as sentenças II e III estão corretas 4a Questão (Ref.: 201509408090) Assinale a alternativa que completa corretamente a lacuna da afirmação a seguir: "No modelo de terminação de tratamento de exceção, depois de uma exceção ser tratada o programa não retorna ao ponto de lançamento porque o __________ expirou." método main bolco finally bloco cacth bloco try método getMessage 5a Questão (Ref.: 201509699642) Uma exceção é um objeto gerado para indicar a ocorrência de algum tipo de condição excepcional durante a execução de um método qualquer. Apenas objetos de classes pertencentes à hierarquia de classes de exceção do Java poderão ser gerados, propagados e capturados. A superclasse dessa hierarquia, que por sua vez é uma subclasse de Object, é: Exception VirtualMachineErros Throwable RunTimeException Error 6a Questão (Ref.: 201509708737) No java, é necessário um método para cada catch ou lista de exceções que podem ser lançadas. Se um método causar uma exceção mas não capturá-la, então deve-se utilizar a palavra-chave: Error Finally Try Throws Exception 7a Questão (Ref.: 201509699661) Uma exceção é um objeto gerado para indicar a ocorrência de algum tipo de condição excepcional durante a execução de um método qualquer. Apenas objetos de classes pertencentes à hierarquia de classes de exceção do Java poderão ser gerados, propagados e capturados. A subclasse que indica uma tentativa de converter para o formato numérico uma String cujo conteúdo não seja compatível com o formato escolhido é: NumberFormatException NullPointerException IndexOutOfBoundsException IOException ArithmeticExceptiocn 8a Questão (Ref.: 201509162599) Baseando-se no trecho de código abaixo, podemos afirmar que: public class Avaliacao { public static void main(String[] args) { String a = "3"; int saida = 0; try { int i = Integer.parseInt(a); saida = i; } catch (Exception e) { saida = -1; } finally { saida = 10; } System.out.println(saida); } } Não compilará; A saída no console será: "10" A saída no console será: "3" A saída no console será: "13" A saída no console será: "-1" Avaliando aprendizado (aula 10) 1a Questão (Ref.: 201509162623) Dado o trecho de código escrito em Java abaixo, podemos afirmar que: public class Avaliacao{ public void metodo() throws Exception { throw new Exception(); } public static void main(String args[]) { int x, y, z; x = y = z = 1; try { new Avaliacao().metodo(); x++; } catch (Exception e) { y++; } finally { z++; new Avaliacao().metodo(); } System.out.println(x + "," + y + "," + z); } } Imprime no console: 2,2,1. O programa não compila. Imprime no console: 1,1,3. Imprime no console: 2,2,3. Imprime no console: 1,1,2. 2a Questão (Ref.: 201509162643) Por qual motivo é utilizado o bloco try...catch. Realizar tentativas de execução. Fazer depuração de códigos. Polimorfismo. Tratar e recuperar erros. Auditar código. 3a Questão (Ref.: 201509746588) Eventos representam uma ação que ocorreu num componente GUI. Dentre os mais comuns no Swing, qual das opções abaixo NÃO é um evento de ação? Ativar e desativar JCheckbox Ativar um RadioButton Clicar em menus Digitar um texto Cliques em botões 4a Questão (Ref.: 201509162625) Analise o seguinte trecho de código. Qual o resultado de tentar compilá-lo e executá-lo? class Avaliacao { public static void main(String[] args) { System.out.println("Inicio do main!!"); try { System.out.println("Inicio do try!"); int[] array = new int[3]; for (int i = 0; i < 4; ++i) { array[i] = i; System.out.println(i); } System.out.println("Fim do try!"); } catch (Exception e) { System.out.println("Exceçao: " + e); } System.out.println("Fim do main!"); } } O código compila ocorre uma exceção ArrayIndexOutOfBoundsException, contudo está é tratada e o programa segue ate imprimir: "Fim do main!". O código compila execução sem a existência de Exceções. O código compila, mas tem sua execução interrompida devido a ocorrênciade uma ArrayIndexOutOfBoundsException. O código não compila por causa de um erro no array. O código não compila. 5a Questão (Ref.: 201509162670) De acordo com a afirmação abaixo (Fonte: adaptado IBM): "permite que referências de tipos de classes mais abstratas representem o comportamento das classes concretas que referenciam, assim, um mesmo método pode apresentar várias formas, de acordo com seu contexto." interface polimorfismo agregação classe abstrata herança 6a Questão (Ref.: 201509163043) Pode-se dizer sobre exceções que: Marque a alternativa correta. são as principais classes de exceções Java: NullPointerException, offExcecpion e onException a estrutura de uma exceção é o bloco catch, que resume-se em tentar executar o código, bloco try, que fará todo o tratamento em caso de algum erro throws é o comando responsável pela implementação de uma exceção o tratamento de exceção deve ser feito em todos os casos em que haja probabilidade de ocorrer um erro. é obrigatório utilizar o comando finally em todos tratamentos de exceção
Compartilhar