Buscar

PROGRAMAÇÃO ORIENTADA A OBJETOS AULAS/EXERCÍCIOS COMPLETOS JAVA

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

Trabalhando com componentes visuais como JButton identifique qual o método abaixo é FALSO
R: public void show(): Faz o frame aparecer na tela
O pacote de controles gráficos que o canvas não se altera com o sistema operacional é?
R: SWING
Um programa Java é listado a seguir:
Um bloco do programa está faltando. Ao inserir o bloco:
Qual será a saída exibida através do comando System.out.print ?
R: 00 11 21 32 42
Idenficar qual das definições abaixo sobre componentes visuais que NÃO está correta.
R: JLabel = Área em que o usuário utiliza para digitar.
Trabalhando com componentes visuais como JFrame identifique qual o método abaixo é FALSO.
R: public void PasteCopy(): Faz a cópia/cola de um texto.
Idenficar qual das definições abaixo sobre componentes visuais que NÃO está correta
R: JClosed = Identifica todos os frames já fechados pelo usuário.
Acerca de Construtores em Java, marque a alternativa correta:
R: O construtor dar a possibilidade ou obriga o usuário de uma classe a passar argumentos para o objeto
durante o processo de criação do mesmo
O comando Scanner, permite a entrada de informações pelo usuário via teclado. Na utilização do comando,
devemos declara-lo, por exemplo, da seguinte forma:
R: Scanner xyz = new Scanner (System.in)
Os objetos da classe JScrollPane fornecem capacidade de rolagem a componentes JComponent. O
construtor JScrollPane(int, int) recebe, como parâmetros, dois valores inteiros que definem a política de
rolagem - horizontal e vertical. Neste contexto, assinale a alternativa que apresenta a constante que
representa a política para a barra de rolagem vertical sempre aparecer.
R: VERTICAL_SCROLLBAR_ALWAYS
Sobre API Java Swing identifique a alternativa FALSA.
R: Swing utiliza a classe Button para representar um container de botão, onde AWT utiliza a classe
JButton.
Analise o seguinte programa desenvolvido na linguagem Java.
public class testeLogica {
public static void main(String[] args) {
boolean A=true, B=false;
boolean R1, R2, R3, R4;
R1 = (A || B && A || !B);
R2 = (!(A || !B) && (A || B));
R3 = (A && B) && (!A || !B);
R4 = (!A || B || A || !B);
System.out.print(R1);
System.out.print(R2);
System.out.print(R3);
System.out.print(R4);
}
}
Qual é a sequência CORRETA que será exibida pelo System.out.print ? (de cima para baixo)
R: true, false, false, true
Considerando os passos para se criar uma GUI, identifique qual dos passos apresentados abaixo
está INCORRETO
R: Chamar (opcionalmente) show() e definir o tamanho do frame com setSize().
Os objetos da classe JScrollPane fornecem capacidade de rolagem a componentes JComponent. O
construtor JScrollPane(int, int) recebe, como parâmetros, dois valores inteiros que definem a política de
rolagem - horizontal e vertical. Neste contexto, assinale a alternativa que apresenta a constante que
representa a política para a barra de rolagem horizontal aparecer somente quando necessário.
R: HORIZONTAL_SCROLLBAR_AS_NEEDED
Observe o código Java:
Se o atributo Base e o método setBase forem private, a única forma de atribuirmos o valor a Base, é
através da instanciação:
R: Quadrado Q1 = new Quadrado(Lado);
De acordo com algumas definições sobre JFrame identifique qual afirmação NÃO está correta.
R: A programação gráfica está muito ligada à ocorrência de eventos, que não precisam ser tratados
durante o desenvolvimento do programa.
Ao utilizar o Java na criação de uma aplicação, surge a necessidade da utilização do comando Scanner. Esse
comando viabiliza a entrada de informações pelo usuário via teclado. Para a utilização do comando,
devemos importar a biblioteca correspondente. Essa biblioteca é importada através da linha de comando:
R: import java.util.*
Dentre os pacotes mais comuns utilizados em Java identifique a alternativa abaixo cujo descritivo da
funcionalidade NÃO corresponde ao pacote relacionado
R: Java Networking: Desenvolvimento de aplicações de banco de dados SQL.
Identifique qual o método que NÃO é comum em todos os componentes do Swing.
R: get/setDirSize
Qual objeto abaixo não é um objeto atomico?
R: Classe
Os tipos primitivos de dados do Java são:
R: boolean, char, byte, short, int, long, float, double
As classes que compõem o núcleo de funcionalidades Java estão organizadas em pacotes, grupos de
classes, interfaces e exceções afins ou de uma mesma aplicação. Identifique entre os principais pacotes
oferecidos como parte do núcleo Java, o que NÃO faz parte deste núcleo
R: java.exe
Idenficar qual das definições abaixo sobre componentes visuais que NÃO está correta.
R: JClosed = Identifica todos os frames já fechados pelo usuário.
BorderLayout é a classe gerenciadora de leiaute que dispõe os componentes GUI em cinco áreas: norte
(parte superior), sul (parte inferior), leste (lado direito), oeste (lado esquerdo) e centro. Quando não
definimos em qual setor o componente irá entrar, ele irá para qual área?
R: Centro
FlowLayout é a classe gerenciadora de layout que dispõe os componentes GUI sequencialmente na janela,
da esquerda para a direita, de cima para baixo, como se fosse a escrita de um texto dentro de um
parágrafo, à medida que os componentes são adicionados ao container. Utilizando o método
setAlignment(int align) podemos definir qual o tipo de alinhamento será utilizado. Assinale a alternativa
que apresenta a constante que corresponde ao alinhamento dos componentes para o canto principal de
orientação do container, como por exemplo à esquerda em uma orientação da esquerda para direita.
R: FlowLayout.LEADING
Analise as linhas de código abaixo, e assinale a alternativa que descreve corretamente tal processamento:
GridLayout layout;
layout = new GridLayout(4,6);
R: cria uma grade com 4 linhas e 6 colunas
Os gerenciadores de leiautes organizam os componentes GUI em um contêiner de objetos com o objetivo
de construir uma apresentação melhor. Sua função é facilitar a vida do designer na construção das
interfaces. Essa funcionalidade permite que o programador se concentre na aparência e nos
comportamentos básicos, deixando para o gerenciador de leiaute a responsabilidade do detalhe da
aparência. Os contêiners derivados da classe Window podem utilizar os leiautes do tipo: (I) BorderLayout
(II) FlowLayout (III) GridLayout (IV) GridBagLayout
R: Todas as opções estão corretas.
"Classe gerenciadora de leiaute que dispõe os componentes GUI sequencialmente na janela, da esquerda
para a direita, de cima para baixo". Assinale a alternativa que indica a classe gerenciadora acima descrita
R: FlowLayout
De acordo com os tipos de Layout, identifique qual das afirmações abaixo está INCORRETA
R: - BoxLayout: é uma versão simplificada do GridBagLayout. Permite indicar a localização dos
componentes em coordenadas X e Y, porém não permite o controle da distância entre componentes.
Analise as linhas de código abaixo, e assinale a alternativa que descreve corretamente tal processamento:
R: posiciona um botão ("OK") na área leste do container.
“Classse gerenciadora de layout oferecida pelo Swing que é simples, com alto grau de flexibilidade. Dispõe
os componentes GUI em uma única linha ou única coluna. Entretanto, arranjos de componentes bem
complexos podem ser obtidos". Assinale a alternativa que indica a classe gerenciadora acima descrita
R: BoxLayout
De acordo com a definição de Gerenciamento de Layout, identifique qual das alternativas abaixo NÃO está
correta
R: A decisão é tomada usando-se designs padronizados pelo usuário.
Os gerenciadores de layouts organizam os componentes GUI em um container de objetos com o objetivo
de construir uma apresentação melhor. Sua função é facilitar a vida do designer na construção das
interfaces. Essa funcionalidade permite que o programador se concentre na aparência e nos
comportamentos básicos, deixando para o gerenciador de layout a responsabilidade do detalhe da
aparência. Neste contexto, assinale a alternativaque apresenta o conjunto de linhas que configura o
gerenciador FlowLayout para o container corrente.
R: layout = new FlowLayout();
getContentPane().setLayout(layout);
Um programador Júnior precisa adicionar, a um JFrame, um JButton com o texto "Enviar". Toda a vez que o
mouse estiver sobre o botão, o cursor do mesmo deve ser alterado para o ícone "mãozinha". Dadas as
opções abaixo, qual representa o trecho código necessário para este fim?
R: JButton botao = new JButton("Enviar");
botao.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
frame.add(botao);
Tenho uma aplicação que trabalha com cadastro de funcionários e que usa botões de rádio ou botões de
opção. Para conseguir a exclusividade na marcação de um botão entre vários que apresentam o estado
civil de um funcionário tenho que ...
R: Criar um objeto de ButtonGroup e adicionar cada botão de rádio a este objeto de ButtonGroup.
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.
R: III, II, I, IV
A classe Cursor (java.lang.Object) encapsula a representação do bitmap do cursor do mouse. Para alterar o
comportamento dos cursores, basta definir o novo tipo de cursor com:
R: this.setCursor(Cursor.getPredefinedCursor(Cursor.MOVE_CURSOR));
Dentro do pacote javax.swing, a classe utilizada para criar um escopo de opções exclusivas é:
R: ButtonGroup
Na criação de menus, usando o pacote javax.swing, a classe que funciona como container para as diversas
opções de menu e:
R: JMenuBar
Na montagem de um menu em barras, em uma interface gráfica, qual a classe que possibilita a criação de
itens de menu?
R: JMenuItem
Dado a lista de métodos da classe JTextField o que NÃO é correto afirmar?
R: setText(String): insere um texto no banco de dados.
Todos os componentes do SWING originados da superclasse JComponent possuem um conjunto de
métodos que permite controlar aspectos visuais como fonte, cursor, borda, cor de fundo e cor de fonte.
Dentre os métodos indicados abaixo, assinale aquele que permite trocar a cor de frente do componente:
R: setForeground()
Na montagem de um menu em barras, em uma interface gráfica, qual a classe responsável pela estrutura
do menu?
R: JMenuBar
Dado a lista de métodos da classe JTextField o que NÃO é correto afirmar?
R: setText(String): insere um texto no banco de dados.
Quase todos os componentes propagam eventos. Estes eventos devem ser tratados em algum ponto do
código da aplicação. Os eventos nunca são tratados no próprio componente. Para ligar o código do
tratamento de eventos ao componente existem, no Java, um conjunto de interfaces chamadas listeners.
Assim sendo, assinale a alternativa que completa corretamente a lacuna da afirmação a seguir: "O evento
_________ é disparado quando a ação do usuário é clicar em componente JComponent."
R: MouseEvent
Sobre o tratamento de eventos, identifique qual das interfaces abaixo está INCORRETA.
R: LabelTextListener
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:
R: Invocado quando perde o foco;
Qual dos métodos abaixo não é previsto na interface WindowListener?
R: windowDestroyed
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.
R: Digitar um texto.
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. Existem 4 tipos padrão de caixa de diálogo. Marque a opção
que NÃO faz parte de caixa de diálogo.
R: ActionDialog
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:
R: Invocado quando o mouse entra na região gráfica do componente
Trabalhando com Métodos da interface WindowListener, identifique qual o método abaixo é FALSO.
R: WindowOpenFrame: chamado quando usuário abre uma nova janela.
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:
R: KeyListener
Qual método é acionado quando ocorre a alteração do texto de um componente associado a TextListener?
R: textValueChanged
O nome do método da interface ItemListener que é invocado quando um componente de seleção muda de
estado é:
R: itemStateChanged
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:
R: Invocado quando o texto do component AWT sofre alguma alteração;
É um componente que combina um botão ou um campo de edição com um caixa de lista tipo drop-down:
R: JComboBox
A interface FocusListener gerencia o evento extremamente importantes para um componente. Qual
método é invocado quando o componente ganha foco:
R: focusGained(FocusEvent e);
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.
R: III, II, I, IV
A persistência em Banco de Dados é uma constante em programas de automação comercial. Porém certas
interfaces e classes geram dúvidas para programadores iniciantes. Entres elas encontrasse a
DriverManager. Dada as alternativas abaixo, selecione a que define DriverManager.
R: É responsável por fornecer a conexão de uma aplicação Java com o Banco de dados
O primeiro passo a ser executado em uma aplicação Java para o acesso aos dados armazenados em um
SGBD corresponde ao carregamento do Driver compatível com o respectivo SGBD. Tal ação é realizada
através da seguinte linha de comando:
R: Class.forName(parâmetro);
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.
R: resultado = sentenca. executeUpdate ("select * from funcionario where codigo = '123'");
Assinale a alternativa correta referente a uma exceção do pacote java.sql.*
R: SQLException
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?
R: DriverManager
Java Database Connectivity (JDBC) define um conjunto de classes e interfaces para escrever programas ou
sistemas em Java que utilizem Banco de Dados. Estas classes e interfaces efetuam as conexões entre a
aplicação e o Sistema Gerenciador de Banco de Dados (SGBD). Ao utilizar o JDBC, podemos enviar
comandos SQL ou PL/SQL para quase todos os bancos de dados relacionais. Em um programa Java, o
objeto que representa as sentenças com instruções SQL que serão enviadas para execuçãopelo SGBD é
uma implementação da interface:
R: Statement
Assinale a alternativa que completa corretamente a lacuna da afirmação a seguir: "A interface
____________ é uma tabela de dados que representa o resultado de uma consulta em uma base de
dados."
R: ResultSet
É a interface usada quando precisamos executar stored procedures:
R: CallableStatement
Objetos que implementam a interface Statement são usados para o envio de instruções SQL, a serem
executadas pelo SGBD, retornando o resultado obtido. Indique qual é o método usado para o envio de
instruções SQL do grupo: INSERT; UPADATE E DELETE
R: int executeUpdate (String SQL)
Qual o método da Interface ResultSet que move o cursor uma posição para cima?
R: previous()
Os programas desenvolvidos em Java normalmente comunicam-se com um banco de dados e manipulam
seus dados utilizando a API JDBC. Esta fornece um conjunto padrão de interfaces para bancos de dados em
conformidade com o SQL. Uma Interface bastante popular é o Statement que é responsável por controlar e
executar uma instrução SQL. Para que possamos executar a instrução select do SQL, que método devemos
usar?
R: executeQuery()
Java Database Connectivity (JDBC) define um conjunto de classes e interfaces para escrever programas ou
sistemas em Java que utilizem Banco de Dados. Estas classes e interfaces efetuam as conexões entre a
aplicação e o Sistema Gerenciador de Banco de Dados (SGBD). Ao utilizar o JDBC, podemos enviar
comandos SQL ou PL/SQL para quase todos os bancos de dados relacionais. Os objetos de instrução
retornam resultados de consulta SQL como objetos:
R: ResultSet
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());
}
}
}
R: Class.forName, DriverManager.getConnection, con.createStatement(),stm.executeQuery, rs.next()
É o nome do método da classe Statement usado para enviar uma instrução SQL do tipo INSERT, UPDATE ou
DELETE:
R: executeUpdate
Existem duas formas de se criar uma classe que execute em forma multithread na linguagem Java, são elas:
R: Herança da classe java.lang.Thread e implementação da interface java.lang.Runnable
Sabe-se que a thread A escreve o numero 1 na tela (System.Out.Println("1");) e, a thread B escreve o
numero 2 na tela (System.Out.Println("2");) ambas dentro de um for de 1 até 1000. Se a thread A for
iniciada e logo em seguida for iniciada a thread B. Pode-se afirmar que:
R: Nada pode ser dito quanto a ordem de impressão dos números.
A prioridade de uma thread corresponde à preferência que ela terá perante às demais durante sua
execução. Quanto maior a prioridade de uma thread, maior será sua preferência no uso da CPU. A
prioridade é extremamente ligada ao algoritmo de escalonamento de CPU que o sistema operacional
utiliza. Para definir a prioridade de uma thread, em um programa Java, utiliza-se o método:
R: setPriority()
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:
R: números de 1 a 10, sendo que o número 5 é usado para definir a prioridade como normal.
A execução de uma Thread pode passar por:
R: quatro estados
Em Java, usamos a classe Thread para criarmos linhas de execução paralelas. Identifique quais destes
métodos e descrição do que realizam estão corretos : notify() notifica uma thread que a sua prioridade já
foi alterada. wait() permite que a thread suspenda a sua execução até que o processo se encerre e seja
reiniciado novo processo. notifyAll() notifica todas as threads que uma dada condição se alterou.
R: f, f, v
O conceito de Threads é largamente usado na programação Java. Selecione a opção abaixo que possui a
palavra chave que o Java adotou para informar que um determinado bloco deve estar síncrono com os
demais threads:
R: synchronized
Todos os sistemas operacionais modernos possuem o conceito de processos que, de forma simplificada,
são programas diferentes e independentes executados pelo sistema operacional. Threading é um artifício
que permite a coexistência de múltiplas atividades dentro de um único processo. Um processo pode conter
múltiplas threads que parecem executar ao mesmo tempo e de forma assíncrona em relação às outras
threads. Mas como definir a preferencia de execução dos mesmos? Identifique qual o método responsável
por definir a prioridade e os valores possíveis.
R: Médodo: void setPriority(int prioridade) - Prioridade: 1 à 10
Qual a palavra reservada do Java voltada para a sincronização de threads?
R: synchronized
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 é:
R: notifyAll()
Threads que trocam informações em tempo de execução são chamadas de:
R: síncronas
O conceito de Threads é largamente usado na programação Java. Com base neste conceito, selecione a
opção incorreta:
R: As threads se diferem dos processos por não poderem ter áreas de dados comuns
Durante a execução de threads, há casos em que elas trabalham independentemente uma da outra, sem
necessidade de qualquer comunicação entre elas. Threads que trabalham independentes no tempo são
chamadas de:
R: Assíncronas
Na sincronização de Threads, alguns métodos são muito importantes. Qual o método que é responsável
por provocar uma espera?
R: wait()
A classe SwingUtilities fornece, entre outros, dois métodos para ajudar a fazer o tratamento de eventos na
execução de um programa. Assinale a alternativa correta que indica o método que 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.
R: invokeLater()
Para criar um programa que responda às necessidades do usuário, o programador precisa aprender como a
estrutura Swing trabalha com Threads. Neste contexto, a maioria das interações com componentes Swing
deve ser feita através da thread de tratamento de evento. Assinale a alterantiva que indica a classe que
fornece métodos para auxiliar neste tratamento.
R: SwingUtilities
Os componentes GUI Swing não são seguros quanto ao uso de Threads. Quer dizer que se múltiplas
Threads acessam um componente Swing, os resultados podem não estar corretos. Todas as interações com
componentes Swing devem ser executadas a partir de uma Thread de cada vez. Neste contexto, assinale a
alternativa que indica a thread através da qual a maioria das interações com componentes Swing são
feitas.
R: Thread de tratamento de eventos
Para criar um programa que responda às necessidades do usuário, o programador precisa aprender como a
estrutura Swing trabalha com Threads. Neste contexto, assinale a alternativa que indica a Thread que
executa os processo que consomem processamento em segundo plano.
R: Thread de trabalho
Java possui a interface Runnable no pacote java.lang para suportar a programação com threads. Para criar
uma Thread, basta criar uma classe que implemente Runnable, através da instrução:
R: public Class MinhaThread implements Runnable
Para criar um programa que responda às necessidades do usuário, o programador precisa aprender como a
estruturaSwing trabalha com Threads. Neste contexto, assinale a alternativa que indica a Thread que
executa o código inicial da aplicação.
R: Thread inicial
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.
R: f, v, v

Continue navegando