Buscar

AV1 - Programação Orientada a Objetos

Prévia do material em texto

Avaliação: CCT0263_AV_201202162606 » PROGRAMAÇÃO ORIENTADA A OBJETOS
	Tipo de Avaliação: AV
	Aluno: 201202162606 - FRANCISCO JOSÉ DA SILVA
	Professor:
	OSWALDO BORGES PERES
	Turma: 9001/AA
	Nota da Prova: 5,0        Nota de Partic.: 2        Data: 30/05/2014 08:03:41
	
	 1a Questão (Ref.: 201202419940)
	Pontos: 0,5  / 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 R2
 
		
	
Resposta: try{ Double txtRaio2 = (Double)txtRaio.getText().toString(); if txtRaio2 > 0 { Double vArea = txtRaio2*txtRaio2; system.out.print("Área calculada é: " + vArea); } } catch (Exception e) { system.out.print("Ocorreu o erro: " + e); }
	
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.: 201202270104)
	Pontos: 0,0  / 1,5
	Faça um programa em JAVA para apresentar o menu abaixo.
 
		
	
Resposta: import
	
Gabarito: import java.awt.*;
import javax.swing.*;
public class MinhaTela {
public static void main(String args[]) {
JFrame f=new JFrame("Tela Complexa");
JMenu menuArquivo=new
JMenu("Arquivo");
JMenu menuSobre=new JMenu("Sobre");
JMenu subMenuSalvar=new
JMenu("Salvar");
JMenuItem a1=new JMenuItem("Abrir");
JMenuItem e1=new JMenuItem("Sair");
JMenuItem s1=new JMenuItem("Salvar");
JMenuItem s2=new JMenuItem("Salvar
como");
subMenuSalvar.add(s1);
subMenuSalvar.add(s2);
menuArquivo.add(a1);
menuArquivo.add(subMenuSalvar);
menuArquivo.addSeparator();
menuArquivo.add(e1);
JMenuBar menuCompleto=
new JMenuBar();
menuCompleto.add(menuArquivo);
menuCompleto.add(menuSobre);
f.setJMenuBar(menuCompleto);
f.setDefaultCloseOperation(
JFrame.EXIT_ON_CLOSE);
f.setSize( new Dimension(400,400) );
f.setVisible(true);
}
}
	
	
	 3a Questão (Ref.: 201202270087)
	Pontos: 0,5  / 0,5
	De acordo com a definição de FlowLayout, identifique qual das alternativas abaixo NÃO está correta.
		
	
	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.
	
	É uma classe gerenciadora de layout que arranja os componentes seqüencialmente na janela, da esquerda para a direita, do topo para baixo.
	
	Se a linha for muito longa, os componentes passam para a linha de baixo.
	
	Os componentes recebem o seu tamanho preferido tanto verticalmente quanto horizontalmente.
	
	
	 4a Questão (Ref.: 201202269925)
	Pontos: 0,5  / 0,5
	Identifique qual o método que NÃO é comum em todos os componentes do Swing.
		
	
	getLength/Width
	
	get/setLocation
	
	get/setPreferredSize
	 
	get/setDirSize
	
	get/setSize
	
	
	 5a Questão (Ref.: 201202419875)
	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.
		
	
	ii, iii, i, iv
	
	ii, iv, i, iii
	 
	iii, ii, i, iv
	
	iv, ii, i, iii
	
	iii, iv, i, ii
	
	
	 6a Questão (Ref.: 201202318311)
	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: 
 
		
	
	actionChanged
	
	valuePerformed
	
	itemListener
	 
	valueChanged
	 
	actionPerformed
	
	
	 7a Questão (Ref.: 201202419882)
	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.
		
	
	ii, iii, i, iv
	
	iii, i, ii, iv
	
	iv, ii, iii, i
	 
	iii, ii, i, iv
	
	i, ii, iii, iv
	
	
	 8a Questão (Ref.: 201202303799)
	Pontos: 0,5  / 0,5
	Assinale a alternativa correta referente a uma exceção do pacote ¿java.sql¿:
		
	
	OptionalDataException
	
	FileNotFoundException
	
	IOException
	 
	SQLException
	
	EOFException
	
	
	 9a Questão (Ref.: 201202270249)
	Pontos: 1,0  / 1,0
	Trabalhando com Métodos da interface WindowListener, identifiquequal o método abaixo é FALSO.
 
		
	
	WindowClosing: chamado quando inicia o fechamento da janela.
 
	 
	WindowOpenFrame: chamado quando usuário abre uma nova janela.
	
	WindowDeactivated: chamado quando usuário torna outra janela a janela ativa.
	
	WindowActivated: chamado quando usuário torna janela ativa.
 
	
	WindowClosed: chamado depois do fechamento da janela.
	
	
	 10a Questão (Ref.: 201202428540)
	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:
		
	
	execute
	
	executeQuery
	
	getMaxRows
	 
	executeUpdate
	
	getResultset

Continue navegando