Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Portfólio de Programação Orientada a 
Objetos II 
 
Aluno: Francisco Erik Brito Martins 
Curso: Sistemas de Informação - 6º Semestre 
 
Introdução 
Este relatório tem como objetivo apresentar a execução de quatro projetos distintos, 
cobrindo aspectos fundamentais do desenvolvimento em Java SE: Interface Gráfica (GUI), 
Concorrência (Threads), Padrões de Projeto e Persistência de Dados (JDBC). O foco é 
validar a aplicação prática de cada conceito. 
 
Detalhamento dos Projetos 
Projeto 1: Implementação de GUI com Java Swing 
 
Introdução 
O objetivo foi criar uma Interface Gráfica do Usuário (GUI) básica, utilizando a biblioteca 
Java Swing, focando na organização visual dos componentes. 
 
Métodos 
A classe principal extends JFrame (a janela). Utilizamos o FlowLayout para posicionar 
componentes padrões (botões, JComboBox, JTextField) dentro do frame. 
 
Resultados 
A janela foi renderizada com sucesso, exibindo todos os componentes de forma acessível 
ao usuário. A estrutura visual básica foi estabelecida. 
 
 
 
Conclusão 
O projeto validou a montagem da estrutura visual da aplicação. Seria necessário adicionar 
Tratamento de Eventos para que os componentes se tornem funcionais. 
 
Código Fonte: 
 
import javax.swing.*; 
import java.awt.*; 
 
public class MainApp extends JFrame { 
 
 public MainApp() { 
 
 setTitle("Aplicação Gráfica"); 
 setSize(400, 200); 
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
 setLayout(new FlowLayout()); 
 
 String[] options = {"Opção 1", "Opção 2", "Opção 3"}; 
 JComboBox comboBox = new JComboBox(options); 
 JCheckBox checkBox = new JCheckBox("Aceitar termos"); 
 JTextField textField = new JTextField(15); 
 JButton btnSalvar = new JButton("Salvar"); 
 JButton btnSair = new JButton("Sair"); 
 
 add(comboBox); 
 add(checkBox); 
 add(textField); 
 add(btnSalvar); 
 add(btnSair); 
 
 setVisible(true); 
 } 
 
 public static void main(String[] args) { 
 
 new MainApp(); 
 } 
} 
 
 
 
 
 
Projeto 2: Demonstração de Threads 
 
Introdução 
O objetivo foi demonstrar o conceito de Multithreading, permitindo que duas rotinas de 
código sejam executadas assincronamente, otimizando o tempo de espera. 
 
Métodos 
Foi criado duas tarefas que implementam a interface Runnable: uma com pausa de 1 
segundo (contagem) e outra com pausa de 2 segundos (mensagens). Ambas foram 
iniciadas simultaneamente usando o método start(). 
 
Resultados 
A saída no console apresentou um entrelaçamento dos números e mensagens, confirmando 
que o Java executou as duas tarefas em paralelo, sem que uma bloqueasse a outra. 
 
 
 
Conclusão 
A implementação de Runnable e o uso correto de .start() foram bem-sucedidos em 
demonstrar a execução não-bloqueante, essencial para aplicações responsivas. 
 
Códigos fonte: 
 
(Main.java) 
 
public class Main { 
 public static void main(String[] args) { 
 
 ExibirNumeros thread1 = new ExibirNumeros(); 
 ExibirMensagens thread2 = new ExibirMensagens(); 
 
 Thread t1 = new Thread(thread1); 
 Thread t2 = new Thread(thread2); 
 
 t1.start(); 
 t2.start(); 
 
 } 
} 
 
 
 
(ExibirMensagens.java) 
 
class ExibirMensagens implements Runnable { 
 @Override 
 public void run() { 
 String[] mensagens = {"Mensagem A", "Mensagem B", "Mensagem C", "Mensagem 
D"}; 
 int i = 0; 
 while (iSystem.out.println("ID: " + id + ", Nome: " + nome + ", Email: " + email); 
 } 
 
 } catch(SQLException e) { 
 
 System.out.println("Erro SQL: " + e.getMessage()); 
 e.printStackTrace(); 
 
 } catch(ClassNotFoundException e) { 
 
 System.out.println("Driver MySQL não encontrado: " + e.getMessage()); 
 
 } finally { 
 
 try { 
 
 if(rs != null) { 
 rs.close(); 
 } 
 
 if(stmt != null) { 
 stmt.close(); 
 } 
 
 if(conexao != null) { 
 conexao.close(); 
 System.out.println("\nConexão fechada com sucesso!"); 
 } 
 } catch(SQLException e) { 
 System.out.println("Erro ao fechar recursos: " + e.getMessage()); 
 } 
 } 
 } 
} 
 
 
 
 
Conclusão Final 
Os quatro projetos cobriram o ciclo completo de um aplicativo Java, passando pelo 
front-end (Swing), processamento assíncrono (Threads), arquitetura (Singleton) e backend 
(JDBC). A aplicação bem-sucedida dos conceitos valida a proficiência no desenvolvimento 
de software em Java SE. 
 
	Portfólio de Programação Orientada a Objetos II 
	Introdução 
	Detalhamento dos Projetos 
	Projeto 1: Implementação de GUI com Java Swing 
	Projeto 2: Demonstração de Threads 
	Projeto 3: Aplicação do Singleton 
	Projeto 4: Banco de Dados NoSQL 
	Conclusão Final

Mais conteúdos dessa disciplina