Prévia do material em texto
UNIVERSIDADE VEIGA DE ALMEIDA – UVA
CURSO SUPERIOR EM SITEMAS DE INFORMAÇÃO
ATIVIDADE CERTIFICADORA
PROGRAMAÇÃO ORIENTADA A OBJETOS II
FILIPE GONÇALVES ISQUIERDO– 20191302246
RIO DE JANEIRO
2021.1
FILIPE GONÇALVES ISQUIERDO
PROGRAMAÇÃO ORIENTADA A OBJETOS II
Trabalho apresentado no curso
Superior em Sistemas de Informação da
Universidade Veiga de Almeida, como requisito
para obtenção do certificado de
PROGRAMAÇÃO ORIENTADA A OBJETOS II
Professor Orientador: MARCO AURELIO NOVAES ESTEVES
RIO DE JANEIRO
2021.1
CLASSE ESTACIONAMENTO
package estacionamento;
/**
*
* @author isquierdo
*/
public class Estacionamento {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
}
}
CLASSE APLICATIVO
package estacionamento.app;
import estacionamento.dao.CarroDAO;
import estacionamento.db.AcessoDB;
import estacionamento.model.Carro;
import java.awt.Font;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import javax.swing.JOptionPane;
/**
*
* @author isquierdo
*/
public class App extends javax.swing.JFrame {
/**
* Creates new form App
*/
private Carro carroSelecionado;
private ResultSet rs;
private boolean edicao = false;
public App() {
initComponents();
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jpPesquisa = new javax.swing.JPanel();
txtPesquisa = new javax.swing.JTextField();
btnPesquisar = new javax.swing.JButton();
txtPlaca = new javax.swing.JTextField();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
txtMarca = new javax.swing.JTextField();
txtCor = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
txtEntrada = new javax.swing.JTextField();
jLabel4 = new javax.swing.JLabel();
txtSaida = new javax.swing.JTextField();
jLabel5 = new javax.swing.JLabel();
btnCadastrar = new javax.swing.JButton();
btnAlterar = new javax.swing.JButton();
btnExcluir = new javax.swing.JButton();
btnListar = new javax.swing.JButton();
jScrollPane1 = new javax.swing.JScrollPane();
listaCarros = new javax.swing.JList<>();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
txtPesquisa.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtPesquisaActionPerformed(evt);
}
});
btnPesquisar.setText("Buscar por placa");
btnPesquisar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnPesquisarActionPerformed(evt);
}
});
jLabel1.setText("Placa");
jLabel2.setText("Marca");
jLabel3.setText("Cor");
jLabel4.setText("Entrada");
jLabel5.setText("Saída");
btnCadastrar.setText("cadastrar");
btnCadastrar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnCadastrarActionPerformed(evt);
}
});
btnAlterar.setText("Alterar");
btnAlterar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnAlterarActionPerformed(evt);
}
});
btnExcluir.setText("Excluir");
btnExcluir.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnExcluirActionPerformed(evt);
}
});
btnListar.setText("Listar");
btnListar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnListarActionPerformed(evt);
}
});
listaCarros.setModel(new javax.swing.AbstractListModel<String>() {
String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" };
public int getSize() { return strings.length; }
public String getElementAt(int i) { return strings[i]; }
});
jScrollPane1.setViewportView(listaCarros);
javax.swing.GroupLayout jpPesquisaLayout = new javax.swing.GroupLayout(jpPesquisa);
jpPesquisa.setLayout(jpPesquisaLayout);
jpPesquisaLayout.setHorizontalGroup(
jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpPesquisaLayout.createSequentialGroup()
.addContainerGap()
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addGroup(jpPesquisaLayout.createSequentialGroup()
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(txtPlaca, javax.swing.GroupLayout.DEFAULT_SIZE, 80, Short.MAX_VALUE)
.addComponent(txtPesquisa))
.addComponent(jLabel1))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(btnPesquisar)
.addGroup(jpPesquisaLayout.createSequentialGroup()
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel2)
.addComponent(txtMarca, javax.swing.GroupLayout.PREFERRED_SIZE, 80, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel3)
.addComponent(txtCor, javax.swing.GroupLayout.PREFERRED_SIZE, 80, javax.swing.GroupLayout.PREFERRED_SIZE)))))
.addGroup(jpPesquisaLayout.createSequentialGroup()
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel4)
.addComponent(txtEntrada, javax.swing.GroupLayout.PREFERRED_SIZE, 80, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel5)
.addComponent(txtSaida, javax.swing.GroupLayout.PREFERRED_SIZE, 80, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(jpPesquisaLayout.createSequentialGroup()
.addComponent(btnCadastrar)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnAlterar).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnExcluir)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnListar))
.addComponent(jScrollPane1))
.addContainerGap(86, Short.MAX_VALUE))
);
jpPesquisaLayout.setVerticalGroup(
jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpPesquisaLayout.createSequentialGroup()
.addGap(23, 23, 23)
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtPesquisa, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnPesquisar))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(jpPesquisaLayout.createSequentialGroup()
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtPlaca, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtMarca, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addComponent(txtCor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(jpPesquisaLayout.createSequentialGroup()
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel2)
.addComponent(jLabel3))
.addGap(26, 26, 26)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(txtEntrada, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtSaida, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(jpPesquisaLayout.createSequentialGroup()
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel4)
.addComponent(jLabel5))
.addGap(26, 26, 26)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jpPesquisaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btnCadastrar)
.addComponent(btnAlterar)
.addComponent(btnExcluir)
.addComponent(btnListar))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(15, Short.MAX_VALUE))
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap()
.addComponent(jpPesquisa, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jpPesquisa, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(125, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void txtPesquisaActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void btnPesquisarActionPerformed(java.awt.event.ActionEvent evt) {
try{
CarroDAO carroDAO = new CarroDAO();
this.carroSelecionado = carroDAO.buscarPorPlaca(this.txtPesquisa.getText());
if (this.carroSelecionado == null) {
JOptionPane.showMessageDialog(null,"Nenhum carro encontrado!");
return;
}
this.txtPlaca.setText(this.carroSelecionado.getPlaca());
this.txtMarca.setText(this.carroSelecionado.getMarca());
this.txtCor.setText(this.carroSelecionado.getCor());
this.txtEntrada.setText(this.carroSelecionado.getHoraEntrada().toString());
this.txtSaida.setText(this.carroSelecionado.getHoraSaida().toString());
this.edicao = true;
}catch(Exception e){
e.printStackTrace();
JOptionPane.showMessageDialog(null,"Não foi possível buscar o Carro!");
}
}
private void btnCadastrarActionPerformed(java.awt.event.ActionEvent evt) {
Carro carro = new Carro();
CarroDAO dao = new CarroDAO();
carro.setPlaca(txtPlaca.getText());
carro.setMarca(txtMarca.getText());
carro.setCor(txtCor.getText());
carro.setHoraEntrada(Integer.valueOf(txtEntrada.getText()));
carro.setHoraSaida(Integer.valueOf(txtSaida.getText()));
if (dao.inserir(carro)) {
JOptionPane.showMessageDialog(null, "Carro cadastrado!");
}
}
private void btnAlterarActionPerformed(java.awt.event.ActionEvent evt) {
CarroDAO carroDAO = new CarroDAO();
this.carroSelecionado.setPlaca(this.txtPlaca.getText());
this.carroSelecionado.setMarca(this.txtMarca.getText());
this.carroSelecionado.setCor(this.txtCor.getText());
this.carroSelecionado.setHoraEntrada(Integer.parseInt(this.txtEntrada.getText()));
this.carroSelecionado.setHoraSaida(Integer.parseInt(this.txtSaida.getText()));
if (carroDAO.alterar(this.carroSelecionado)) {
JOptionPane.showMessageDialog(null,"Carro alterado com sucesso!");
}
}
private void btnExcluirActionPerformed(java.awt.event.ActionEvent evt) {
CarroDAO dao = new CarroDAO();
if (dao.remover(this.carroSelecionado)) {
JOptionPane.showMessageDialog(null,"Carro excluído com sucesso!");
}
}
private void btnListarActionPerformed(java.awt.event.ActionEvent evt) {
String consulta= "select * FROM Carros";
AcessoDB acesso = new AcessoDB();
if (acesso.conectar()) {
try{
PreparedStatement stm = acesso.con.prepareStatement(consulta);
rs = stm.executeQuery();
if (!rs.next()) {
JOptionPane.showMessageDialog(null,"Nenhum carro encontrado!");
}
ArrayList<String> ar = new ArrayList<>();
String linha = String.format("%6s|%-10s|%10s|%5s|%5s"
,"placa","marca","cor","Entrada","Saída");
ar.add(linha);
while(rs.next()){
linha = String.format("%6s|%-10s|%10s|%5s|%5s", rs.getString("placa")
,rs.getString("marca"),rs.getString("cor"),rs.getString("horaEntrada")
,rs.getString("horaSaida"));
ar.add(linha);
}
String vet[] = new String[ar.size()];
for(int i = 0; i < ar.size(); i++){
vet[i] = ar.get(i);
}
this.listaCarros.setFont(new Font("Courier New", Font.PLAIN, 11));
this.listaCarros.setListData(vet);
this.listaCarros.setSelectedIndex(1);
}catch(Exception e){
e.printStackTrace();
JOptionPane.showMessageDialog(null,"Não foi possível listar os carros!");
}
}
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(App.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(App.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(App.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(App.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new App().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton btnAlterar;
private javax.swing.JButton btnCadastrar;
private javax.swing.JButton btnExcluir;
private javax.swing.JButton btnListar;
private javax.swing.JButton btnPesquisar;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JPanel jpPesquisa;
private javax.swing.JList<String> listaCarros;
private javax.swing.JTextField txtCor;
private javax.swing.JTextField txtEntrada;
private javax.swing.JTextField txtMarca;
private javax.swing.JTextField txtPesquisa;
private javax.swing.JTextField txtPlaca;
private javax.swing.JTextField txtSaida;
// End of variables declaration
}
CLASSE CARRODAO
package estacionamento.dao;
import estacionamento.db.AcessoDB;
import estacionamento.model.Carro;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;
public class CarroDAO {
public Carro buscarPorPlaca(String placa){
AcessoDB acesso = new AcessoDB();
Carro carro = new Carro();
ResultSet rs;
if (acesso.conectar()) {
try{
String consulta = "select * from Carros where placa = '" + placa.trim() + "'";
PreparedStatement stm = acesso.con.prepareStatement(consulta);
rs = stm.executeQuery();
if (rs.next()) {
if (Integer.parseInt(rs.getString("id")) > 0) {
carro.setId(Integer.parseInt(rs.getString("id")));
carro.setPlaca(rs.getString("placa"));
carro.setMarca(rs.getString("marca"));
carro.setCor(rs.getString("cor"));
carro.setHoraEntrada(Integer.parseInt(rs.getString("horaEntrada")));
carro.setHoraSaida(Integer.parseInt(rs.getString("horaSaida")));
}
}
}catch(Exception e){
JOptionPane.showMessageDialog(null, "Não foi possível busca o Carro.");
return null;
}
}
acesso.desconectar();
return carro;
}
public boolean inserir(Carro carro){
AcessoDB acesso = new AcessoDB();
if (acesso.conectar()) {
try{
String consulta = "INSERT into Carros(placa,marca,cor,horaEntrada,horaSaida)"
+ " VALUES('" + carro.getPlaca() + "','"
+ carro.getMarca() + "','" + carro.getCor() + "',"
+ carro.getHoraEntrada() + ","
+ carro.getHoraSaida() + ")";
Statement st = acesso.con.createStatement();
st.executeUpdate(consulta);
}catch(Exception e){
JOptionPane.showMessageDialog(null, "Carro não incluído.");
return false;
}
}
acesso.desconectar();
return true;
}
public boolean alterar(Carro carro){
AcessoDB acesso = new AcessoDB();
if (acesso.conectar()) {
try{
String consulta = "UPDATE Carros SET placa='" +carro.getPlaca()+
"', marca='" + carro.getMarca()
+ "', cor ='"+ carro.getCor()+ "',horaEntrada="
+ carro.getHoraEntrada() + ", horaSaida="
+ carro.getHoraSaida()+ " WHERE id = " + carro.getId()+ "";
Statement st = acesso.con.createStatement();
st.executeUpdate(consulta);
}catch(Exception e){
e.printStackTrace();
JOptionPane.showMessageDialog(null, "Carro não alterado.");
return false;
}
}
acesso.desconectar();
return true;
}
public boolean remover(Carro carro){
AcessoDB acesso = new AcessoDB();
if (acesso.conectar()) {
try{
String consulta = "DELETE FROM Carros WHERE id ="
+ carro.getId();
Statement st = acesso.con.createStatement();
st.executeUpdate(consulta);
}catch(Exception e){
e.printStackTrace();
JOptionPane.showMessageDialog(null, "Carro não excluído!");
}
}
acesso.desconectar();
returntrue;
}
public boolean listar(){
AcessoDB acesso = new AcessoDB();
Carro carro = new Carro();
ResultSet rs;
if (acesso.conectar()) {
try{
String consulta = "SELECT * FROM Carros";
PreparedStatement stm = acesso.con.prepareStatement(consulta);
rs = stm.executeQuery();
String linha = String.format("%3s|%-15s|%10s|%10s|%10s",
"placa", "marca","cor", "Entrada", "SaÃda");
System.out.println(linha);
while(rs.next()){
if (Integer.parseInt(rs.getString("placa")) > 0) {
carro.setPlaca(rs.getString("placa"));
carro.setMarca(rs.getString("marca"));
carro.setCor(rs.getString("cor"));
carro.setHoraEntrada(Integer.parseInt(rs.getString("horaEntrada")));
carro.setHoraSaida(Integer.parseInt(rs.getString("horaSaida")));
linha = String.format("%3s|%-15s|%10s|%10s|%10s",
carro.getPlaca(), carro.getMarca(), carro.getCor(),
carro.getHoraEntrada().toString(), carro.getHoraSaida().toString());
System.out.println(linha);
}
}
rs = stm.executeQuery();
}catch(Exception e){
e.printStackTrace();
System.out.println("Lista não gerada");
return false;
}
}
acesso.desconectar();
return true;
}
}
CLASSE ACESSODB
package estacionamento.db;
import java.io.File;
import java.sql.Connection;
import java.sql.DriverManager;
import javax.swing.JOptionPane;
public class AcessoDB {
public Connection con;
private static final String ARQUIVO_BANCO = "carrosDB.accdb";
private static final String BANCO = "jdbc:ucanaccess://" + ARQUIVO_BANCO ;
public boolean conectar(){
try{
File arquivoBanco = new File(ARQUIVO_BANCO);
if (!arquivoBanco.exists()) {
JOptionPane.showMessageDialog(null, "Arquivo de banco não encontrado.");
}
con = DriverManager.getConnection(BANCO);
} catch(Exception e){
JOptionPane.showMessageDialog(null, e.getMessage());
return false;
}
return true;
}
public boolean desconectar(){
con = null;
if(con == null){
return true;
}
return false;
}
}
CLASSE CARRO
package estacionamento.model;
public class Carro {
private Integer id;
private String placa, marca, cor;
private Integer horaEntrada, horaSaida;
public Carro() {
}
public Carro(Integer id) {
this.id = id;
}
public Carro(String placa) {
this.placa = placa;
}
public Carro(Integer horaEntrada, Integer horaSaida) {
this.horaEntrada = horaEntrada;
this.horaSaida = horaSaida;
}
public Carro(String placa, String marca, String cor, Integer id, Integer horaEntrada, Integer horaSaida) {
this.placa = placa;
this.marca = marca;
this.cor = cor;
this.id = id;
this.horaEntrada = horaEntrada;
this.horaSaida = horaSaida;
}
public String getPlaca() {
return placa;
}
public void setPlaca(String placa) {
this.placa = placa;
}
public String getMarca() {
return marca;
}
public void setMarca(String marca) {
this.marca = marca;
}
public String getCor() {
return cor;
}
public void setCor(String cor) {
this.cor = cor;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getHoraEntrada() {
return horaEntrada;
}
public void setHoraEntrada(Integer horaEntrada) {
this.horaEntrada = horaEntrada;
}
public Integer getHoraSaida() {
return horaSaida;
}
public void setHoraSaida(Integer horaSaida) {
this.horaSaida = horaSaida;
}
}
CAPTURA DE TELA COM OS TESTES
Teste 1:
Teste 2:
Bibliografia
· Curso em Vídeo: POO JAVA
· Netbeans
· EBOOK Disciplina POO2