Baixe o app para aproveitar ainda mais
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)
Compartilhar