Buscar

PROGRAMAÇÃO ORIENTADA A OBJETOS - exercícios

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

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

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ê 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

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

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ê 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

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

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ê 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

Prévia do material em texto

PROGRAMAÇÃO ORIENTADA A OBJETOS
	
	Aula 
	 1a Questão (Ref.: 201001368334)
	
	Em JAVA o uso de pacotes é uma prática comum utilizada para organizar classes e interfaces relacionadas. Dado o atributo do pacote, identifique qual benefício de aplicação NÃO se aplica ao respectivo pacote.
		
	 
	Nomenclatura: Pense em convenções quando nomear seus pacotes. Utilize nomeação reversa de domínios para a estrutura de pacotes. Utilize letras minúsculas com underscore (_) para separar palavras em nomes de pacotes.
	
	Acoplamento de classes: Dependências de pacotes são reduzidas com acoplamento de classes.
	 
	Tamanho do pacote: Normalmente, pacotes menores suportam reutilização, enquanto que pacotes maiores suportam melhor a manutenção.
	
	Manutenção: Freqüentemente, as mudanças de software podem ser limitadas a um único pacote quando os pacotes são orientados a funcionalidades.
	
	Acoplamento de sistema: Dependências de pacotes são reduzidas com acoplamento de sistemas.
	
	
	 2a Questão (Ref.: 201001379401)
	
	Uma exceção é um erro que pode ser tratado em tempo de execução e permite que a aplicação continue apesar do erro. Este erro pode ser tratado através de avisos ao usuário ou pela execução do código relativo ao tratamento.
Marque a alternativa que NÃO indica uma palavra reservada para este tratamento:
		
	
	catch
	 
	Static
	
	try
	
	throw
	
	finally
	
	 3a Questão (Ref.: 201001368464)
	
	Considerando os passos para se criar uma GUI, identifique qual dos passos apresentados abaixo estáINCORRETO.
		
	
	Instanciar os componentes no construtor da classe ou na declaração.
	
	Adicionar os componentes ao content pane do frame ou a algum outro container.
	 
	Chamar (opcionalmente) show() e definir o tamanho do frame com setSize().
	
	Declarar os componentes como propriedades da classe que estende JFrame (o top-level container).
	
	Definir o gerenciador de layout do frame e Registrar listeners para os componentes que querem tratar eventos.
	 4a Questão (Ref.: 201001368352)
	
	Identifique qual funcionalidade NÃO corresponde ao subpacote da API Swing.
		
	 
	javax.swing.evento.*: Cria eventos em box de avisos ao usuário e adaptadores. Fornece o código para importar as necessárias classes do pacote.
	
	javax.swing.text.*: Dá suporte a aspectos relacionados com textos de seus componentes Swing. Fornece o código para importar as necessárias classes do pacote.
	 
	javax.swing.plaf.*: Ajuda a implementar e configurar suporte básico adaptável look-and-feel. Fornece o código para importar as necessárias classes do pacote.
	
	javax.swing.border: Declara a interface Border e outras classes, que definem estilos de renderização de bordas específicos.
	
	javax.swing.*: Criação de componentes básicos como botões, painéis e caixas de diálogo. Fornece o código para importar as classes necessárias do pacote.
	
	 5a Questão (Ref.: 201001368444)
	De acordo com a definição de Gerenciamento de Layout, identifique qual das alternativas abaixo NÃO está correta.
		
	
	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).
	 
	Vários tipos de designs diferentes podem ser combinados para realizar qualquer tela que desejamos.
	 
	A decisão é tomada usando-se designs padronizados pelo usuário.
	
	A plataforma Java fornece quatro layout managers mais usados: BorderLayout, BoxLayout, FlowLayout, GridLayout.
	
	
	 6a Questão (Ref.: 201001368429)
	
	De acordo com a definição de Gerenciamento de Layout, identifique qual das alternativas abaixo NÃO está correta.
		
	
	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.
	
	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.
	 
	Gerenciamento de layout consiste no processo de determinar o tamanho, posição dos componentes, cor, formato e as fontes utilizadas.
	 
	O gerencimaneto de layout é geralmente realizado pelos layout managers.
	
	Estas dicas consistem em tamanho mínimo, preferido e máximo, alinhamento vertical e horizontal.
	 7a Questão (Ref.: 201001526889)
	
	Na criação de menus, usando o pacote javax.swing, a classe que funciona como container para as diversas opções de menu e:
		
	
	JFrame
	
	JComponent
	 
	JMenu
	 
	JMenuBar
	
	JMenuItem
	
	 8a Questão (Ref.: 201001526928)
	
	Dentro do pacote javax.swing, a classe utilizada para criar um escopo de opções exclusivas é:
		
	 
	JToggleButton
	 
	ButtonGroup
	
	JButton
	
	JCheckBox
	
	JRadioButton
	
	 9a Questão (Ref.: 201001527287)
	
	A classe Font (java.awt.Font) representa as fontes que são utilizadas para apresentar os textos nas Interfaces gráficas. Em Java, as fontes precisam ser criadas para serem utilizadas. Com relação ao construtor abaixo, selecione a opção correta:
		
	 
	Font (String nome, int estilo, int tamanho);
	
	Font (String nome, String estilo, double tamanho);
	
	Font (String estilo, int nome, int tamanho);
	 
	Font (String nome, String estilo, int tamanho);
	
	Font (String nome, int tamanho, i String estilo);
	 10a Questão (Ref.: 201001416703)
	
	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.PLAIN_MESSAGE);
	
	JOptionPane.showMessageDialog(null,"Cuidado!","Mensagem de Alerta",JOptionPane.INFORMATION_MESSAGE);
	
	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.WARNING_MESSAGE);
	
	 11a Questão (Ref.: 201001527289)
	
	A interface WindowListener disponibiliza 12 métodos de tratamento para os diferentes comportamentos possíveis para a janela. Com relação ao window.Deactivated (MouseEvent e) selecione a opção correta:
		
	 
	Invocado quando perde o foco;
	
	Invocado quando a janela é minimizada;
	
	Invocado quando a janela foi aberta.
	
	Invocado quando ganha o foco;
	
	Invocado quando a janela foi fechada.
	
	 12a Questão (Ref.: 201001527288)
	
	A interface MouseListener disponibiliza 14 métodos de tratamento para os diferentes comportamentos possíveis para as funções do mouse. Com relação ao mouseEntered(MouseEvent e) selecione a opção correta:
		
	 
	Invocado quando o mouse entra na região gráfica do componente
	
	Invocado quando o mouse sai da região gráfica do componente;
	
	Invocado quando o mouse se moveu para região gráfica do componente sem nenhum botão apertado;
	
	Invocado quando o mouse se movimento e seu botão principal é apertado.
	
	Invocado quando o botão do mouse é pressionado e em seguida movimentado com o componente;
	
	 13a Questão (Ref.: 201001526933)É um componente que combina um botão ou um campo de edição com um caixa de lista tipo drop-down:
		
	
	JOptionPane
	 
	JComboBox
	
	JCheckBox
	
	JButton
	
	JList
	
	 14a Questão (Ref.: 201001518276)
	
	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
	
	iii, i, ii, iv
	 
	iii, ii, i, iv
	
	ii, iii, i, iv
	
	iv, ii, iii, i
	
	 15a Questão (Ref.: 201001527290)
	
	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:
		
 Invocado quando a janela é maximizada ou minimizada.
 Invocado quando uma tecla é solta e o componente está em foco;
 Invocado quando uma tecla é apertada e o componente está em foco;
  Invocado quando o texto do component AWT sofre alguma alteração;
 Invocado quando a janela é redimensionada.
	16 a Questão (Ref.: 201001402105)
	
	Para acesso a SGBDs, o Java possui um conjundo de classes e interfaces que, por meior de drivers JDBC, podemos embutir código SQL em métodos java para acesso a diversos SGBDs Qual das opções abaixo não corresponde a uma interface do pacote "java.sql" da API java?
		
	
	ResultSet
	
	Connection
	 
	DriverManager
	
	PreparedStatement
	
	Statement
	
	
	 17a Questão (Ref.: 201001518280)
	
	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.
		
	
	DriverManager.getConnection("jdbc:postgresql:NomeBanco","usuario","senha");
	
	sentenca.executeUpdate("update Funcionario set nome = 'Beltrano', salarioBase = 5000 where codigo = '123'");
	 
	resultado = sentenca. executeUpdate ("select * from funcionario where codigo = '123'");
	
	sentenca.executeUpdate("delete from Funcionario where codigo = '123'");
	 
	sentenca.executeUpdate("insert into FUNCIONARIO values('123','Fulano',2000)");
	
	
	 18a Questão (Ref.: 201001402223)
	
	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.
 
	
	
	1, 2, 4, 3
	
	1, 3, 2, 4
	 
	1, 2 ,3 ,4
	 
	2, 4, 1, 3
	
	4, 3, 1, 2
	 19a Questão (Ref.: 201001402202)
	
	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());  
       }
    }
}
		
	 
	Class.forName, DriverManager.getConnection, con.createStatament(),stm.executeQuery, rs.hasNext()
	
	DriverManager.getConnection, Class.forName, rs.createStatement(),stm.executeQuery, rs.next()
	
	DriverManager.getConnection, Class.forName, rs.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()
	
	
	 20a Questão (Ref.: 201001526935)
	
	É a interface usada quando precisamos executar stored procedures:
		
	
	PreparedStatement
	
	ResultSet
	
	Statement
	
	Connection
	 
	CallableStatement
	
	
	 21a Questão (Ref.: 201001527293)
	
	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:
		
	
	boolean executeUpdate(String SQL);
	
	boolean executeQuery(String SQL);
	
	String executeSQL(String SQL);
	
	boolean executeSQL(String SQL);
	 
	boolean execute(String SQL);
	 22a Questão (Ref.: 201001526936)
	
	A execução de uma Thread pode passar por:
		
	
	cinco estados
	 
	quatro estados
	
	três estados
	
	dois estados
	
	um estado
	
	 23a Questão (Ref.: 201001448531)
	
	Dentre as alternativas abaixo, assinale a alternativa CORRETA referente à Thread:
I. Com Multiprogramação é possível alcançar paralelismo, somente em computadores com mais de uma CPU.
II. Diferentes threads, podem parecer estar todas sendo executadas ao mesmo tempo.
III. Java threads são objetos que nunca se comunicam entre si para compartilhar objetos em memória.
		
	
	Apenas III.
	
	Apenas II, III.
	
	Apenas I, II.
	 
	Apenas II.
	
	Apenas I.
	
	 24a Questão (Ref.: 201001527295)
	
	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:
		
	
	números de 0 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 10, sendo que o número 5 é 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.
	
	números de 1 a 100, sendo que o número 50 é usado para definir a prioridade como normal.
	 25a Questão (Ref.: 201001448539)
	
	Dentre as alternativas abaixo, assinale a alternativa FALSA referente à Thread:
I - wait() - Utilizado para sincronizaracesso 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 I, II.
	
	Apenas III.
	
	Apenas II.
	 
	Apenas I.
	
	Apenas II, III.
	
	 26a Questão (Ref.: 201001526938)
	
	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 é:
		
	
	notify()
	 
	notifyAll()
	
	stop()
	
	start()
	 
	wait()
	
	
	 27a Questão (Ref.: 201001527296)
	
	O conceito de Threads é largamente usado na programação Java. Com base neste conceito, selecione a opçãoincorreta:
		
	 
	As threads se diferem dos processos por não poderem ter áreas de dados comuns.
	
	O uso de memória compartilhada entre os threads obriga o programador a sincronizar as ações de suas thread.
	
	Java adotou a palavra chave synchronized para informar que um determinado bloco deve estar síncrono com os demais threads.
	
	Cada objeto em Java possui um lock e ele deve ser obtido através do comando synchronized.
	
	Os métodos wait(), notify() e notifyAll() também são muito importantes na sincronização, sendo responsáveis por provocar, respectivamente: uma espera, a liberação de uma ou mais threads em espera.
	 28a Questão (Ref.: 201001518314)
	
	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.
		
	
	v, v, f
	
	v, f, v
	
	v, v, v
	 
	f, v, v
	
	f, v, f
	
	
	 29a Questão (Ref.: 201001402166)
	
	public class MinhaThread implements Runnable {
 int count;
 public MinhaThread() { count = 0; }
 public void run() {
   try {
     do {
       Thread.sleep(500); System.out.print(count + " "); count++;
     } while (count < 2);
   } catch (InterruptedException exc) {
      System.out.println("Interrompido.");
   }
 }
}
public class Principal {
    public static void main(String args[]) {
        int aux=5;
        MinhaThread mt = new MinhaThread();
        Thread newThrd = new Thread(mt);
        newThrd.start();
        do {
            System.out.print(aux-- + " ");
            try {
                Thread.sleep(250);
            } catch (InterruptedException exc) {
                System.out.println("Interrompido.");
            }
        } while (mt.count != 2);
    }
} 
	
	
	5 4 3 2 1 1 0
	
	5 4 3 0 2 1 3
	 
	5 4 3 0 2 1 1
	
	4 5 3 0 1 2 1
	 
	0 1 1 2 3 4 5
	
	 30a Questão (Ref.: 201001368504)
	
	Sobre o tratamento de eventos, identifique a alternativa INCORRETA.
		
	 
	As aplicações com uma GUI tipicamente usam ao menos um frame de eventos.
	
	Tanto os componentes AWT como Swing utilizam os tipos de eventos do pacote java.awt.event. Mas o Swing também tem seus próprios eventos no pacote javax.swing.event.
	 
	Mecanismo de tratamento de eventos possui três partes: a origem do evento, o objeto evento e o "ouvinte" (listener) do ouvinte.
	
	O programador precisa: Registrar um ouvinte de evento no componente e implementar um método de tratamento de eventos.
	
	As GUIs são baseadas em eventos gerados pela interação do usuário. Por exemplo, mover o mouse, clicar no mouse, digitar um campo de texto, fechar uma janela, etc.

Outros materiais

Materiais relacionados

Perguntas relacionadas

Materiais recentes

Perguntas Recentes