Baixe o app para aproveitar ainda mais
Prévia do material em texto
Fechar Avaliação: CCT0263_AV_201201194301 » PROGRAMAÇÃO ORIENTADA A OBJETOS Tipo de Avaliação: AV Aluno: 201201194301 - JONATHAN DASSUNCAO TORRES ANGELO Professor: OSWALDO BORGES PERES Turma: 9001/AA Nota da Prova: 5,6 Nota de Partic.: 2 Data: 09/11/2013 08:11:54 1a Questão (Ref.: 201201308809) Pontos: 0,8 / 0,8 Os três elementos básicos quando contidos num arquivo fonte Java devem obrigatoriamente se apresentar na seguinte ordem: class, package e import. package, class e import. package, import e class. import, package e class. class, import e package. 2a Questão (Ref.: 201201304844) DESCARTADA GridLayout é uma implementação de LayoutManager que permite distribuir componentes ao longo de linhas e colunas. Faça um programa em JAVA utilizando o layout GridLayout dispondo de um conjunto de dez botões em um grid de três linhas e quatro colunas. Resposta: Gabarito: import java.awt.*; public class JanelaGrid extends Frame { private final int rows=3, cols=4; public JanelaGrid() { setTitle("GridLayout"); setSize(240,100); setLayout(new GridLayout(rows, cols)); } public void addButton(int count) { int max = rows*cols; if (count < max) max = count; for(int i=1; i <= max; ++i) add(new Button("B"+i)); } public static void main(String[] args) { JanelaGrid j = new JanelaGrid(); int qtde = 10; try { if (args.length > 0) qtde = Integer.parseInt(args[0]); } catch (Exception e) { } j.addButton(qtde); j.validate(); j.setVisible(true); } } 3a Questão (Ref.: 201201304978) Pontos: 0,8 / 0,8 Sobre o tratamento de eventos, identifique qual das interfaces abaixo está INCORRETA. LabelTextListener KeyListener WindowListener MouseListener FocusListener 4a Questão (Ref.: 201201305146) Pontos: 0,8 / 0,8 Criar um programa JAVA que receba por janela JoptionPane o valor de um produto e um código de aumento, utilizando a estrutura switch-case, mostrar em janela de saída o novo valor do produto depois de acrescida a porcentagem correspondente. Segundo a tabela: Código % aumento 1 10 3 25 4 30 8 50 Resposta: import javax.swing.JOptionPane public class Aumento{ public static void main (String[] args){ int codigo float valor valor = Float.parseFloat(JOptionPane.showInputDialog(null, "R$","Valor ", JOptionPane.QUESTION_MESSAGE)); valor = Float.parseInterger(JOptionPane.showInputDialog(null, "R$","Codigo", JOptionPane.QUESTION_MESSAGE)); switch(codigo) { case 1: valor = valor + (valor *10 / 100); JOptionPane.showMessageDialog(null, "R$", "Valor do Produto com aumento " + valor, valor = Float.parseFloat(JOptionPane.showInputDialog(null, "R$","Valor ", JOptionPane.QUESTION_MESSAGE)); case 3: valor = valor + (valor *25 / 100); JOptionPane.showMessageDialog(null, "R$", "Valor do Produto com aumento " + valor, valor = Float.parseFloat(JOptionPane.showInputDialog(null, "R$","Valor ", JOptionPane.QUESTION_MESSAGE)); case 4: valor = valor + (valor *30 / 100); JOptionPane.showMessageDialog(null, "R$", "Valor do Produto com aumento " + valor, valor = Float.parseFloat(JOptionPane.showInputDialog(null, "R$","Valor ", JOptionPane.QUESTION_MESSAGE)); case 8: valor = valor + (valor *50 / 100); JOptionPane.showMessageDialog(null, "R$", "Valor do Produto com aumento " + valor, valor = Float.parseFloat(JOptionPane.showInputDialog(null, "R$","Valor ", JOptionPane.QUESTION_MESSAGE)); } } } Gabarito: import javax.swing.JOptionPane; public class Porcentagem { public static void main(String[] args) { int codigoTaxaAumento; float valorProduto; valorProduto = Float.parseFloat(JOptionPane.showInputDialog(null,"R$","Valor do produto",JOptionPane.QUESTION_MESSAGE)); codigoTaxaAumento = Integer.parseInt(JOptionPane.showInputDialog(null,"Código","Código de taxa do aumento",JOptionPane.QUESTION_MESSAGE)); switch (codigoTaxaAumento) { case 1: valorProduto = valorProduto + (valorProduto * 10 / 100); JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do produto com taxa de aumento",JOptionPane.PLAIN_MESSAGE); break; case 3: valorProduto = valorProduto + (valorProduto * 25 / 100); JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do produto com taxa de aumento",JOptionPane.PLAIN_MESSAGE); break; case 4: valorProduto = valorProduto + (valorProduto * 30 / 100); JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do produto com taxa de aumento",JOptionPane.PLAIN_MESSAGE); break; case 8: valorProduto = valorProduto + (valorProduto * 50 / 100); JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do produto com taxa de aumento",JOptionPane.PLAIN_MESSAGE); break; default: JOptionPane.showMessageDialog(null,"Código" + codigoTaxaAumento,"Código de taxa de aumento desconhcido",JOptionPane.PLAIN_MESSAGE); break; } System.exit(0); 5a Questão (Ref.: 201201315873) Pontos: 0,0 / 0,8 A capacidade de uma classe definir dois diferentes métodos com o mesmo nome, porém com diferentes argumentos, o que permite diferenciar o método a ser utilizado de acordo com a chamada efetuada. Esse conceito é denominado: Herança Polimorfismo Métodos construtores Sobrecarga Encapsulamento 6a Questão (Ref.: 201201308796) Pontos: 0,8 / 0,8 Método especial destinado ao preparo de novos objetos durante sua instanciação. Pode ser acionado por meio do operador new, recebendo parâmetros como métodos comuns, o que permite caracterizar os objetos já na instanciação. Identifique do que trata-se. operação polimórfica. atributo. construtor. herança múltipla. herança polimórfica. 7a Questão (Ref.: 201201385010) Pontos: 0,8 / 0,8 Dentre as alternativas abaixo, assinale a alternativa FALSA referente à Thread: I - wait() - Utilizado para sincronizar acesso a um objeto. Coloca a thread corrente em estado de interrompível. II - notify() Notifica todas as threads que estejam esperando em um lock III - isInterrupted() - Verifica se foi atribuído à thread o estado de interrompível. Apenas II, III. Apenas I. Apenas II. Apenas I, II. Apenas III. 8a Questão (Ref.: 201201308657) Pontos: 0,8 / 0,8 Os princípios de concepção e programação orientada a objeto, é correto afirmar que "um objeto da subclasse é um objeto da superclasse, ou seja, os objetos da subclasse podem ser tratados como objetos da superclasse". Esta afirmação é possível quando se refere ao contexto de: Reutilização. Encapsulamento. Herança. Abstração. Polimorfismo. 9a Questão (Ref.: 201201305276) Pontos: 0,0 / 0,8 De acordo com a teoria sobre Sobrecarga de Construtores, identifique qual das afirmações abaixo está incorreta. Isso se chama "encadeamento de construtores". Um construtor pode chamar outro construtor. Para isto é necessário usar a palavra reservada this. um construtor é o que define a classe. Uma chamada a outro construtor deverá ser a primeira linha do construtor. 10a Questão (Ref.: 201201304814) Pontos: 0,0 / 0,8 Sobre API Java Swing identifique a alternativa FALSA. Swing utiliza a classe Button pararepresentar um container de botão, onde AWT utiliza a classe JButton. Swing também fornece o suporte ao conceito look-and-feel, permitindo mudanças universais no estilo dos componentes da interface gráfica com o usuário. Outras características são: inclusão de tooltips, funcionalidades de acessibilidades, modelo de eventos e componentes sofisticados como tabelas, árvores, componentes de texto, sliders, e barras de progresso. A API Java Swing está contida no pacote javax.swing. Essa API provê funcionalidades para criação de componentes e containers "leves" (puramente criados em Java). A API Swing foi feita para substituir a API AWT. Muitas das novas classes refeitas foram chamadas com o nome antigo que recebiam do componente AWT legado prefixado com um "J". A API Swing faz um excelente uso de subpacotes, com 16 deles na versão Java SE 6. Quando classes comuns são separadas em seus próprios pacotes, a usabilidade do código e manutenção são alavancadas. Swing tira proveito da arquitetura model-view-controller (MVC). O modelo representa o estado atual de cada componente. A visão é a representação dos componentes sobre a tela. O controle é a funcionalidade que liga os componentes de interface com usuário aos eventos. 11a Questão (Ref.: 201201308799) Pontos: 0,8 / 0,8 Com relação a teoria sobre orientação a objetos, considere: Um dos mecanismos fundamentais na programação orientada a objetos é o conceito de redefinição, que ocorre quando um método, cuja assinatura já tenha sido especificada, recebe uma nova definição em uma classe derivada. A linguagem de programação orientada a objetos deve suportar o conceito de ligação tardia, visto que a definição do método que é candidato a ser efetivamente invocado só ocorre durante a execução do programa. O mecanismo de redefinição, juntamente com o conceito de ligação tardia, é a chave para a utilização adequada de: dois métodos de uma mesma classe. restrições de acesso. polimorfismo e herança. objeto de classes derivadas. polimorfismo. Observação: Eu, JONATHAN DASSUNCAO TORRES ANGELO, estou ciente de que ainda existe(m) 1 questão(ões) não respondida(s) ou salva(s) no sistema, e que mesmo assim desejo finalizar DEFINITIVAMENTE a avaliação. Data: 09/11/2013 08:27:27 Período de não visualização da prova: desde 04/11/2013 até 22/11/2013.
Compartilhar