Buscar

Exercícios de Aula - Programação Orientada a Objetos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

EXERCÍCIOS – PROGRAMAÇÃO ORIENTADA A OBJETOS
AULA 01
	
		1.
		De acordo com a descrição de um conjunto de entidades (reais ou abstratas) de um mesmo tipo e com as mesmas características e comportamentos.
É uma definição de:
		Quest.: 1
	
	
	
	
	Conjunto.
	
	 
	Classe.
	
	
	String.
	
	
	Método.
	
	
	Objeto.
	
	
		2.
		Na programação orientada a objetos existem quatro tipos de polimorfismos possíveis de serem aplicados na estrutura de uma classe, a saber:
		Quest.: 2
	
	
	
	 
	Hierárquico, Sobrecarga, Procedural e Coerção.
	
	
	Sobrecarga, Coerção, Herdado e Implementado.
	
	 
	Inclusão, Paramétrico, Sobrecarga e Coerção.
	
	
	Procedural, Hierárquico, Paramétrico e Implementado.
	
	
	Incursivo, Exclusivo, Herdado e Implementado.
	
	
		3.
		Um componente Swing deve incluir objetos. Dos relacionados abaixo, o que NÃO é correto afirmar?
		Quest.: 3
	
	
	
	
	Um modelo que mantém os dados (modelo da MVC básica).
	
	
	Um componente que estende JComponent, um componente fornece uma API para o programador.
	
	 
	Não suporta a troca do look & feel: Macintosh, Windows, Motif.
	
	
	Um delegado da IU que éuma vista (vista) com listeners (controladores), combina as duas funções colocando os listeners junto dos objectos controlados, listeners são habitualmente implementados por classes internas
	
	 
	Transfere a construção de interfaces para os delegados; passa-lhes os eventos, torna o modelo transparente para o programador; atravessado pelos métodos.
AULA 02
	 1a Questão (Ref.: 201301621724)
	
	De acordo com a definição de Gerenciamento de Layout, identifique qual das alternativas abaixo NÃO está correta.
		
	
	O gerencimaneto de layout é geralmente realizado pelos layout managers.
	 
	Os componentes oferecem dicas de tamanho e posicionamento para os layout managers, mas são estes que decidem onde e como estes componentes serão posicionados.
	
	Estas dicas consistem em tamanho mínimo, preferido e máximo, alinhamento vertical e horizontal.
	 
	Gerenciamento de layout consiste no processo de determinar o tamanho, posição dos componentes, cor, formato e as fontes utilizadas.
	
	Podemos customizar estas preferências de duas maneiras: Chamando os métodos de definição setMinimumSize, setAlignmentX e Subclasseando componentes e modificando os métodos de acesso:getMinimumSize, getAlignmentX.
	
	
	 2a Questão (Ref.: 201301621619)
	
	Eventos representam uma ação que ocorreu num componente GUI, dentre os mais comuns no Swing, qual destes abaixo NÃO é um evento de ação.
		
	
	Cliques em botões.
	
	Ao pressionar[Enter] em campos de texto.
	
	Ativar e desativar Check box's.
	 
	Digitar um texto.
	
	Cliques em menus.
	
	
	 3a Questão (Ref.: 201301621739)
	
	De acordo com a definição de Gerenciamento de Layout, identifique qual das alternativas abaixo NÃO está correta.
		
	 
	A plataforma Java fornece quatro layout managers mais usados: BorderLayout, BoxLayout, FlowLayout, GridLayout.
	 
	A decisão é tomada usando-se designs padronizados pelo usuário.
	
	Vários tipos de designs diferentes podem ser combinados para realizar qualquer tela que desejamos.
	
	Quando usarmos o método add para acrescentar um componente em um container, o layout manager em uso deve ser levado em consideração.
 
	
	Chamadas possíveis do add: Usando posição relativa (BorderLayout) panel.add(component, BorderLayout.CENTER) e Ordem de adição: (BoxLayout, GridLayout, ...) panel.add(component).
AULA 03
		1.
		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.
		Quest.: 1
	
	
	
	
	ii, iii, i, iv
	
	
	iv, ii, i, iii
	
	
	iii, iv, i, ii
	
	 
	iii, ii, i, iv
	
	
	ii, iv, i, iii
AULA 04
	
	 1a Questão (Ref.: 201301771567)
	
	Visando maior usabilidade, Java permite desenvolver interfaces de muita qualidade. Para tanto, correlacione as colunas abaixo:
i. mouseClicked
ii. mouseEntered
iii. mousseExited
iv. mousePressed
v. mouseReleased
vi. mouseDragged
(  ) Quando o botão sai da região gráfica do componente.
(  ) Quando o botão do mouse é apertado
(  ) Quando o botão e pressionado e solto sobre um componente.
(  ) Quando o mouse se movimento e seu botão principal esta apertado
(  ) Quando o botão entra na região gráfica do componente.
(  ) Quando o botão do mouse é solto.
		
	
	v, ii, i, vi, iv, iii
	 
	iii, ii, i, vi, iv, v
	
	iii, i, iv, vi, ii, v
	 
	iii, iv, i, vi, ii, v
	
	v, iv, i, vi, ii, iii
	
	
	 2a Questão (Ref.: 201301780226)
	
	Um listener é uma interface que especifica os métodos que uma aplicação deve ter para ser notificada da ocorrência de determinado evento. Indique o listener correspondente à ação do usuário de digitar uma tecla:
		
	
	MouseListener
	 
	KeyListener
	
	TextListener
	
	ItemListener
	
	ActionListener
	
	
	
 3a Questão (Ref.: 201301669998)
	
	A Inclusão de Caixas de Mensagem é realizada por meio da classe JOptionPane. Esta classe oferece vários métodos para a criação de caixas de diálogo. Uma característica particular desta classe é que não precisa instanciar objetos para a criação das caixas, que são criadas diretamente pelos métodos desta classe. A figura a seguir pode ser criada através da instrução:
		
	
	JOptionPane.showMessageDialog(null,"Cuidado!"," Mensagem de Alerta ",JOptionPane.QUESTION_MESSAGE);
	
	JOptionPane.showMessageDialog(null,"Cuidado!","Mensagem de Alerta",JOptionPane.ERROR_MESSAGE);
	 
	JOptionPane.showMessageDialog(null,"Cuidado!","Mensagem de Alerta",JOptionPane.PLAIN_MESSAGE);
	 
	JOptionPane.showMessageDialog(null,"Cuidado!","Mensagem de Alerta",JOptionPane.WARNING_MESSAGE);
	
	JOptionPane.showMessageDialog(null,"Cuidado!","Mensagem de Alerta",JOptionPane.INFORMATION_MESSAGE);
AULA 05
	
		1.
		É um componente que combina um botão ou um campo de edição com um caixa de lista tipo drop-down:
		Quest.: 1
	
	
	
	
	JOptionPane
	
	 
	JComboBox
	
	
	JButton
	
	
	JCheckBox
	
	
	JList
	
	
		2.
		A interface FocusListener gerencia o evento extremamente importantes para um componente. Qual método é invocado quando o componente ganha foco:
		Quest.: 2
	
	
	
	
	focusReceivedFocus(FocusEvent e);
	
	
	focusGetFocus(FocusEvent e);
	
	
	focusReceived (FocusEvent e);
	
	
	focusSetFocus(FocusEvent e);
	
	 
	focusGained(FocusEvent e);
	
	
		3.
		Eventos de texto são gerados quando um texto em um componente foi alterado de alguma forma. Este evento funciona apenas com componentes textfields e textarea da biblioteca AWT. Com relação ao textValueChanged(TextEvent e) selecione a opção correta:
		Quest.: 3
	
	
	
	
	Invocado quando a janela é maximizada ou minimizada.
	
	 
	Invocado quando o texto do component AWT sofre alguma alteração;
	
	
	Invocado quando uma tecla é apertada e o componente está em foco;
	
	
	Invocado quando a janela é redimensionada.
	
	
	Invocado quando uma tecla é solta e o componente está em foco;
AULA 06
	
		1.
		Assinale a alternativa correta referente a uma exceção do pacote ¿java.sql¿:
		Quest.: 1IOException
	
	 
	SQLException
	
	
	FileNotFoundException
	
	
	OptionalDataException
	
	
	EOFException
	
	
		2.
		Assinale a alternativa correta referente às afirmações abaixo pertinentes a JDBC:
         Tipo _____ -  Converte chamadas JDBC em chamadas especifica de um banco de dados. Comunica diretamente com o servidor de banco de dados, então ele requer que alguns códigos estejam presentes no cliente.
         Tipo _____ -  Converte chamadas JDBC dentro de pacotes que são enviados pela rede em um formato proprietário utilizado por banco de dados específicos. Possibilita uma chamada direta entre o cliente e o servidor de banco de dados. Este driver é completamente implementado em Java para alcançar a independência de plataforma.
        Tipo _____ -  Prove acesso JDBC via um ou mais driver ODBC (Open DataBase Connectivity). Traduz as chamadas JDBC em chamadas ODBC e as envia para o driver ODBC. Desta forma, o driver ODBC, deve estar presente na máquina do cliente. Utilizado para ambientes não Java.
         Tipo _____ -  As requisições do BD JDBC são passadas através da rede ara um servidor "middle-tier". O servidor "middle-tier" então traduz a requisição (direta ou indiretamente) para o especifico banco de dados nativo para passar a diante a requisição para o servidor com o banco de dados.
 
		Quest.: 2
	
	
	
	 
	2, 4, 1, 3
	
	
	1, 3, 2, 4
	
	
	1, 2, 4, 3
	
	
	4, 3, 1, 2
	
	
	1, 2 ,3 ,4
	
	
		3.
		Supondo-se que um Banco de Dados em PostgreSql cujo o nome é NomeBanco, o usuário é usuario e a senha é senha, possui uma tabela chamada FUNCIONARIO com a estrutura abaixo:
create table FUNCIONARIO(
  codigo char(10),
  nome varChar(50),
  salarioBase real
);
Assinale a alternativa que certamente está incorreta.
		Quest.: 3
	
	
	
	
	DriverManager.getConnection("jdbc:postgresql:NomeBanco","usuario","senha");
	
	 
	resultado = sentenca. executeUpdate ("select * from funcionario where codigo = '123'");
	
	
	sentenca.executeUpdate("update Funcionario set nome = 'Beltrano', salarioBase = 5000 where codigo = '123'");
	
	 
	sentenca.executeUpdate("insert into FUNCIONARIO values('123','Fulano',2000)");
	
	
	sentenca.executeUpdate("delete from Funcionario where codigo = '123'");
AULA 07
	
		1.
		Dada a classe abaixo, complete as lacunas de forma correta:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Principal
{
   public static void main(String[] args)
   {
      try 
      {
         _______________("org.postgresql.Driver");  
         Connection con = ______________("jdbc:postgresql:BancoProva","aluno","prova");
         Statement stm =_____________________;
         ResultSet rs = ________________("select * from tabela");
         while(________________)
         {
            System.out.println("Valor da primeira coluna do resultado" + rs.getString(1));
         }  
         con.close();
       }
       catch(Exception e)
       {
          System.out.println("Erro:" + e.getMessage());  
       }
    }
		Quest.: 1
	
	
	
	
	DriverManager.getConnection, Class.forName, rs.createStatement(),stm.executeQuery, rs.next()
	
	 
	Class.forName, DriverManager.getConnection, con.createStatament(),stm.executeQuery, rs.hasNext()
	
	 
	Class.forName, DriverManager.getConnection, con.createStatement(),stm.executeQuery, rs.next()
	
	
	DriverManager.getConnection, Class.forName, con.createStatement(),stm.executeQuery, rs.next()
	
	
	DriverManager.getConnection, Class.forName, rs.createStatament(),stm.executeQuery, rs.hasNext()
	
	
		2.
		É a interface usada quando precisamos executar stored procedures:
		Quest.: 2
	
	
	
	 
	CallableStatement
	
	
	Connection
	
	
	ResultSet
	
	
	Statement
	
	
	PreparedStatement
	
	
		3.
		A interface Statement possui uma série de métodos importantes na manipulação de Banco de Dados. Qual método é executa o comando SQL, que pode retornar vários resultados:
		Quest.: 3
	
	
	
	
	String executeSQL(String SQL);
	
	 
	boolean execute(String SQL);
	
	 
	boolean executeQuery(String SQL);
	
	
	boolean executeSQL(String SQL);
	
	
	boolean executeUpdate(String SQL);
AULA 08
	
		1.
		A execução de uma Thread pode passar por:
		Quest.: 1
	
	
	
	 
	cinco estados
	
	
	três estados
	
	
	dois estados
	
	
	um estado
	
	 
	quatro estados
	
	
		2.
		Dentre as alternativas abaixo, assinale as alternativas CORRETAS referente à Thread:
		Quest.: 2
	
	
	
	
	void start(): incluir o código que deseja executar na linha de execução
	
	
	void run(): este método não deve ser reescrito. É responsavel por inciar a aplicação. Só é executado uma única vez
	
	 
	void stop() interrompe a linha de execução
	
	
	void sleep( log x): coloca a linha que esta em execução em estado de suspensão pelo número de segundos especificado
	
	
	void notify(): desbloqueia a linha de execução que chamaram wait
	
	
		3.
		A prioridade de um thread corresponde a preferência que ela terá perante as demais durante sua execução. Quanto maior a prioridade de um thread, maior será sua preferência no uso da CPU. Threads de mesma prioridade costumam partilhar o tempo de CPU igualmente. Para definir a prioridade de um thread, são usados:
		Quest.: 3
	
	
	
	
	números de 1 a 100, sendo que o número 50 é usado para definir a prioridade como normal.
	
	
	números de 0 a 10, sendo que o número 5 é usado para definir a prioridade como normal.
	
	 
	números de 1 a 10, sendo que o número 5 é usado para definir a prioridade como normal.
	
	
	números de 1 a 5, sendo que o número 3 é usado para definir a prioridade como normal.
	
	
	números de 1 a 100, sendo que o número 5 é usado para definir a prioridade como normal.
AULA 09
	
	
	
		1.
		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.
		Quest.: 1
	
	
	
	
	Apenas II.
	
	
	Apenas I, II.
	
	 
	Apenas III.
	
	
	Apenas II, III.
	
	 
	Apenas I.
	
	
		2.
		Na sincronização de Threads, alguns métodos são muito importantes. O método que é responsável pela liberação de uma ou mais Threads é:
		Quest.: 2
	
	
	
	
	notify()
	
	
	wait()
	
	 
	notifyAll()
	
	
	start()
	
	
	stop()
	
	
		3.
		Threads que trocam informações em tempo de execução são chamadas de:
		Quest.: 3
	
	
	
	
	assíncronas
	
	 
	síncronas
	
	
	encerradas
	
	
	executáveis
	
	
	bloquedas
AULA 10
	
		1.
		Os componentes GUI Swing podem fazer uso de Threads. Identifique com verdadeiro ou falso as alternativas abaixo:
(  ) Todas as interações com componentes Swing devem ser executadas a partir de, no máximo, 10 Threads de cada vez
(  ) invokeLater() solicita que algum código seja executado na Thread de despacho de evento. Este método retorna imediatamente a execução do código, sem que seja necessário esperar.
(  ) invokeAndWait(): Atua muito semelhante ao invokeLater(), exceto pelo fato de esperar pela execução do código.
		Quest.: 1
	
	
	
	 
	f, v, v
	
	
	v, f, vv, v, f
	
	 
	f, v, f
	
	
	v, v, v
	
	
		2.
		Sobre o tratamento de eventos, identifique qual das interfaces abaixo está INCORRETA.
 
		Quest.: 2
	
	
	
	 
	WindowListener
	
	
	KeyListener
	
	 
	LabelTextListener
	
	
	MouseListener
	
	
	FocusListener
	
	
		3.
		Trabalhando com JmenuItem, identifique qual o método abaixo é FALSO.
 
		Quest.: 3
	
	
	
	 
	public void setMnemonic(int mnemonic)
	
	 
	public void setMenuFalse(String text)
	
	
	public void setEnabled(boolean b)
 
	
	
	public void setAccelerator(KeyStroke ks)
	
	
	public JMenuItem(String text, Icon icon)

Continue navegando