Buscar

AVS

Prévia do material em texto

Avaliação: CCT0263_AVS_201201260231 » PROGRAMAÇÃO ORIENTADA A OBJETOS 
Tipo de Avaliação: AVS 
Aluno: 201201260231 - SAMUEL SANTANA DOS SANTOS 
Professor: OSWALDO BORGES PERES Turma: 9001/AA 
Nota da Prova: 3,5 Nota de Partic.: 1,5 Data: 02/07/2014 19:16:02 
 
 
 1a Questão (Ref.: 201201527328) 
 Pontos: 0,0 / 1,5 
Analise o código Java abaixo. 
import javax.swing.*; 
import java.awt.*; 
import java.awt.event.*; 
public class CalculaAreaCirculo extends JFrame { 
 private JButton btnCalcular; 
 private JTextField txtRaio; 
 public CalculaAreaCirculo() { 
 txtRaio = new JTextField(); 
 btnCalcular = new JButton(); 
 getContentPane().setLayout(new FlowLayout()); 
 setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); 
 setResizable(false); 
 txtRaio.setColumns(10); 
 getContentPane().add(txtRaio); 
 btnCalcular.setText("Calcular"); 
 getContentPane().add(btnCalcular); 
 pack(); 
 } 
 
 public static void main( String args []){ 
 CalculaAreaCirculo aplicacao = new CalculaAreaCirculo(); 
 aplicacao.setVisible(true); 
 } 
} 
 Utilizando a linguagem Java complete/continue o código para que, a partir de um valor para o raio definido pelo usuário na caixa de texto, seja calculada a 
área do círculo. Assegure que o valor digitado seja um número e obrigatoriamente um número positivo. Se estas condições não forem atendidas, o sistema 
deve gerar exceções a serem tratadas. 
A área do círculo pode ser calculada por R
2
 
 
 
 
 
Resposta: 
 
 
Gabarito: 
import javax.swing.*; 
import java.awt.*; 
import java.awt.event.*; 
public class CalculaAreaCirculo extends JFrame { 
 private JButton btnCalcular; 
 private JTextField txtRaio; 
 public CalculaAreaCirculo() { 
 txtRaio = new JTextField(); btnCalcular = new JButton(); 
 getContentPane().setLayout(new FlowLayout()); 
 setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); 
 setResizable(false); 
 txtRaio.setColumns(10); 
 getContentPane().add(txtRaio); 
 btnCalcular.setText("Calcular"); 
 getContentPane().add(btnCalcular); 
 BtnCalcularHandler handler = new BtnCalcularHandler (); 
 btnCalcular.addActionListener( handler ); 
 pack(); 
 } 
 public static void main( String args []){ 
 CalculaAreaCirculo aplicacao = new CalculaAreaCirculo(); 
 aplicacao.setVisible(true); 
 } 
 private class BtnCalcularHandler implements ActionListener { 
 public void actionPerformed(ActionEvent event){ 
 if (event.getSource()== btnCalcular){ 
 try{ btnCalcularClick(event); 
 }catch (Exception e){ 
 JOptionPane.showMessageDialog( null, e.getMessage(), 
"Calcula a área do Círculo",JOptionPane.ERROR_MESSAGE); 
 } 
 } 
 } 
 } 
 private void btnCalcularClick( ActionEvent ev) throws Exception{ 
 double raio = 0; 
 try{ raio = Double.parseDouble(txtRaio.getText()); 
 }catch( Exception e ){ 
 JOptionPane.showMessageDialog( null, "Você deve digitar um número.", "Calcula o quadrado", JOptionPane.ERROR_MESSAGE ); 
 return; 
 } 
 if( raio <= 0 ) 
 throw new Exception( "Número deve ser maior do que zero." ); 
 else{ double area = 3.14 * raio * raio; 
 JOptionPane.showMessageDialog( null, "A área do círculo é : " + area, "Calcula a área do Círculo", JOptionPane.PLAIN_MESSAGE ); 
 } 
 } 
} 
 
 
 
 2a Questão (Ref.: 201201527397) 
 Pontos: 0,5 / 1,5 
Dada a tabela e classe Java abaixo: 
Tabela do Banco: 
create table Veiculo( 
 placa char(8) not null, 
 nEixos int, 
 tarifa real, 
 tipo varChar(20) 
); 
Classe Java: 
package modelos; 
public class Pessoa { 
 
 private String cpf, nome; 
 public Pessoa() { } 
 public Pessoa(String cpf) {this.cpf = cpf;} 
 
 public Pessoa(String cpf, String nome) {this.cpf = cpf; 
 this.nome = nome; 
 } 
 public String getCpf() { return cpf; } 
 public void setCpf(String cpf) { this.cpf = cpf; } 
 public String getNome() { return nome; } 
 public void setNome(String nome) { this.nome = nome;} 
 
} 
 
Complete o código abaixo para que efetue a inclusão e a consulta de dados de uma pessoa: 
import java.sql.DriverManager; 
import java.sql.ResultSet; 
import java.sql.Statement; 
import modelos.Pessoa; 
public class Banco { 
 private Connection con; 
 private Statement st; 
 private ResultSet rs; 
 
 public Banco() throws Exception{ 
 Class.forName("org.postgresql.Driver"); 
 con = DriverManager.getConnection("jdbc:postgresql:dbRevisao","postgres","vida157a"); 
 st = con.createStatement(); 
 } 
 
 public void incluir(Pessoa pessoa) throws Exception{ 
 
 
 } 
 
 
 public Pessoa consultar(Pessoa pessoa) throws Exception{ 
 
 
 } 
} 
 
 
Resposta: st = con.executsUpdates("insert Clientes into (1,"Samuel","Rua3",parque ipe,altamira,pa)"); rs = con.getResultSet("select * from Clientes 
nome,endereco,bairro,cidade,uf where codigo=1"); 
 
 
Gabarito: 
import java.sql.DriverManager; 
import java.sql.ResultSet; 
import java.sql.Statement; 
import modelos.Pessoa; 
public class Banco { 
 private Connection con; 
 private Statement st; 
 private ResultSet rs; 
 
 public Banco() throws Exception{ 
 Class.forName("org.postgresql.Driver"); 
 con = DriverManager.getConnection("jdbc:postgresql:dbRevisao","postgres","vida157a"); 
 st = con.createStatement(); 
 } 
 
 public void incluir(Pessoa pessoa) throws Exception{ 
 
 st.executeUpdate("insert into tbPESSOA values('"+pessoa.getNome()+"','"+pessoa.getCpf()+"')"); 
 
 
 } 
 
 
 public Pessoa consultar(Pessoa pessoa) throws Exception{ 
 rs = st.executeQuery("select * from tbPESSOA where cpf='"+pessoa.getCpf()+"'"); 
 if(rs.next()){ 
 pessoa.setNome(rs.getString(1)); 
 pessoa.setCpf(rs.getString(2)); 
 } 
 return pessoa; 
 
 } 
} 
 
 
 
 3a Questão (Ref.: 201201457533) 
 Pontos: 0,0 / 1,0 
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. 
 
 
 
 4a Questão (Ref.: 201201535928) 
 Pontos: 1,0 / 1,0 
É o nome do método da classe Statement usado para enviar uma instrução SQL do tipo INSERT, UPDATE ou DELETE: 
 
 
executeUpdate 
 
getMaxRows 
 
executeQuery 
 
execute 
 
getResultset 
 
 
 
 5a Questão (Ref.: 201201381180) 
 Pontos: 0,0 / 0,5 
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: 
 
 
Polimorfismo. 
 
Encapsulamento. 
 
Reutilização. 
 
Herança. 
 
Abstração. 
 
 
 
 6a Questão (Ref.: 201201377475)Pontos: 0,5 / 0,5 
De acordo com a definição de FlowLayout, identifique qual das alternativas abaixo NÃO está correta. 
 
 
É uma classe gerenciadora de layout que arranja os componentes seqüencialmente na janela, da esquerda para a direita, do topo para baixo. 
 
Trata o container como se fosse uma "página" ou um "parágrafo" da esquerda para a direita e de cima para baixo. 
 
Os componentes são posicionados na ordem inversa que foram adicionados. 
 
Os componentes recebem o seu tamanho preferido tanto verticalmente quanto horizontalmente. 
 
Se a linha for muito longa, os componentes passam para a linha de baixo. 
 
 
 
 7a Questão (Ref.: 201201527263) 
 Pontos: 0,5 / 0,5 
Visando maior usabilidade, Java permite desenvolver interfaces de muita qualidade. 
Em função dos tipos de bordas possíveis, correlacione as colunas abaixo: 
 i. Simple 
 ii. Matte 
 iii. Titled 
 iv. Compound 
 
 
( ) Coloca uma borda com um texto 
( ) Você define quantos pixels serão utilizados. 
( ) Define as bordas simples. 
( ) Podemos compor duas bordas com este estilo. 
 
 
iii, ii, i, iv 
 
ii, iv, i, iii 
 
iv, ii, i, iii 
 
ii, iii, i, iv 
 
iii, iv, i, ii 
 
 
 
 8a Questão (Ref.: 201201425699) 
 Pontos: 0,0 / 0,5 
A figura a seguir, mostra o uso da implementação ListSelectionListener. O uso dessa interface se faz 
necessária para que as opções do componente JList possam ser reconhecidas, a medida que o usuário 
realiza sua escolha. Quando o ListSelectionListenert é utilizada, torna-se obrigatória a declaração do 
método: 
 
 
 
 
actionPerformed 
 
actionChanged 
 
valuePerformed 
 
itemListener 
 
valueChanged 
 
 
 
 9a Questão (Ref.: 201201527270) 
 Pontos: 0,5 / 0,5 
Para tratar eventos de texto, o Java disponibiliza uma série de tratadores de eventos. Visando este conceito, correlacione as colunas abaixo: 
 
i. itemStateChanged(ItemEvent e) 
ii. KeyTyped(KeyEvent e) 
iii. textValueChanged(TextEvent e) 
iv. focusGained(FocusEvent e) 
( ) Invocado quando o texto do component AWT sofre alguma alteração 
( ) Invocado quando uma tecla é apertada e o componente está em foco 
( ) Invocada quando um componente de seleção muda de estado 
( ) Invocado quando o componente ganha foco. 
 
 
i, ii, iii, iv 
 
iv, ii, iii, i 
 
iii, ii, i, iv 
 
iii, i, ii, iv 
 
ii, iii, i, iv 
 
 
 
 10a Questão (Ref.: 201201411187) 
 Pontos: 0,5 / 0,5 
Assinale a alternativa correta referente a uma exceção do pacote ¿java.sql¿: 
 
 
IOException 
 
OptionalDataException 
 
EOFException 
 
FileNotFoundException 
 
SQLException 
 
 
 
Período de não visualização da prova: desde 20/06/2014 até 07/07/2014.

Continue navegando