Aula Prática Criando Views e Controles

Tamanho: px
Começar a partir da página:

Download "Aula Prática Criando Views e Controles"

Transcrição

1 Aula Prática Criando Views e Controles Criando a interface utilizando Swing Paulo Ricardo Lisboa de Almeida 1

2 Criando uma UI Simples Vamos criar uma view simples no braço utilizando swing Existem opções mais interessantes, mas vamos focar no swing por ser simples e nos dar uma boa visão do nosso MVC Para isso, crie uma classe que vai representar uma de nossas views Chame essa classe de ViewPrincipal ViewPrincipal deve herdar da classe javax.swing.jframe 2

3 Criando a tela principal A tela inicial pode exibir as principais funcionalidades do sistema Ações relacionadas a animais, espécies e tipos de animal Na aula, vamos nos preocupar apenas com animais e espécies A aplicação completa, contendo todas as funcionalidades faz parte do trabalho Vamos criar 2 botões, um para cada grupo de funcionalidades Animais Espécies Adicione também um painel (JPanel) que vai representar o painel que contém o menu principal da aplicação 3

4 Criando a tela principal public class ViewPrincipal extends JFrame{ private static final long serialversionuid = 1L; private JButton btnanimais = new JButton("Animais"); private JButton btnespecies = new Jbutton("Espécies"); private JPanel conteudomenuprincipal; //... No construtor da view principal vamos adicionar os principais componentes e alinhá-los 4

5 Criando a tela principal public ViewPrincipal() { conteudomenuprincipal = new JPanel(); SpringLayout layout = new SpringLayout(); conteudomenuprincipal.setlayout(layout); conteudomenuprincipal.add(btnanimais); conteudomenuprincipal.add(btnespecies); //ajuste o componente btnanimais 5 pixels (a direita) do painel principal (âncora oeste) layout.putconstraint(springlayout.west, btnanimais, 5, SpringLayout.WEST, conteudomenuprincipal); //ajuste o componente btnanimais 5 pixels (abaixo) do painel principal (âncora norte) layout.putconstraint(springlayout.north, btnanimais, 5, SpringLayout.NORTH, conteudomenuprincipal); //ajuste o componente btnespecies 5 pixels (a direita) do painel principal (âncora oeste) layout.putconstraint(springlayout.west, btnespecies, 5, SpringLayout.WEST, conteudomenuprincipal); //ajuste o componente btnanimais 40 pixels (abaixo) do painel principal (âncora oeste) layout.putconstraint(springlayout.north, btnespecies, 40, SpringLayout.NORTH, conteudomenuprincipal); //caso queiram ajustar o tamanho da janela de acordo com as posições relativas dos componentes //ajuste o tamano do conteúdo principal de acordo com a borda sul do botão espécies //layout.putconstraint(springlayout.south, content, 5, SpringLayout.SOUTH, btnespecies); //ajuste o tamano do conteúdo principal de acordo com a borda leste do botão espécies //layout.putconstraint(springlayout.east, content, 5, SpringLayout.EAST, btnanimais); this.settitle("clínica Veterinária UP"); this.setdefaultcloseoperation(jframe.exit_on_close); this.exibirtelainicial(); 5

6 Colocando para rodar Note que no construtor estamos chamando um método da classe chamado exibirtelainicial O método pode ser definido como: public void exibirtelainicial() { // tamanho inicial da janela em pixels this.setpreferredsize(new Dimension(120, 120)); // seta o conteúdo do painel atual (JFrame) como o JPAnel content recém criado this.setcontentpane(conteudomenuprincipal); this.pack();// Ajusta o conteúdo (content) para o JFrame (ex.: ajuste de resolução) 6

7 Colocando para rodar Crie um main e para testar sua view, faça o seguinte: public static void main(string[] args) { ViewPrincipal view = new ViewPrincipal(); view.setvisible(true); System.out.println("Fim!"); 7

8 Adicionando Listeners Na view, crie um método que vai adicionar um listener ao botão Animais Adicione também um método para exibir erros em geral public void showerror(string errmessage) { JOptionPane.showMessageDialog(this, errmessage); public void addbtnanimaislistener(actionlistener animaislistener) { btnanimais.addactionlistener(animaislistener); 8

9 Criando o Controller Vamos criar um controller Crie uma classe ViewPrincipalController Adicione um atributo do tipo ViewPrincipal Inicialize esse atributo no construtor Crie também uma classe aninhada dentro de ViewPrincipalController Classe chamada BtnAnimaisListener Implementa a interface ActionListener 9

10 Criando o Controller Vamos criar um controller Crie uma classe ViewPrincipalController Adicione um atributo do tipo ViewPrincipal Inicialize esse atributo no construtor Crie também uma classe aninhada dentro de ViewPrincipalController Classe chamada BtnAnimaisListener Implementa a interface ActionListener Override no método actionperformed Por enquanto simplesmente exiba uma mensagem de teste na tela No construtor do controller, crie um objeto da classe BtnAnimaisListener e o coloque como listener do botão btnanimais da view 10

11 Criando o Controller import java.awt.event.actionevent; import java.awt.event.actionlistener; import com.up.clinica.view.viewprincipal; public class ViewPrincipalController { private ViewPrincipal view; public ViewPrincipalController(ViewPrincipal view) { this.view = view; this.view.addbtnanimaislistener(new BtnAnimaisListener()); private class BtnAnimaisListener implements ActionListener public void actionperformed(actionevent e) { view.showerror("exibindo um erro de teste"); 11

12 No main No main, vamos criar um crontroller, passando a view como parâmetro public static void main(string[] args) { ViewPrincipal view = new ViewPrincipal(); ViewPrincipalController controller = new ViewPrincipalController(view); view.setvisible(true); System.out.println("Fim!"); 12

13 Testando Rode o projeto e clique no botão animais 13

14 Tela de edição de animais Vamos exibir os animais em uma tabela Para isso, precisamos criar uma classe que herde de AbstractTableModel Faz a tradução de uma lista de animais para uma tabela exibida ao usuário public class ExibicaoAnimais extends AbstractTableModel{ private static final int NUM_COLUNAS_ANIMAL = 3; private List<Animal> animaistabela; public ExibicaoAnimais() { public ExibicaoAnimais(List<Animal> animais) { animaistabela = animais; public List<Animal> getanimaistabela() { return animaistabela; public void setanimaistabela(list<animal> animaistabela) { this.animaistabela = animaistabela; //... 14

15 Tela de edição de animais Sobrecarregue os seguintes métodos em public String getcolumnname(int coluna) { switch(coluna) { case 0: return "Identificador"; case 1: return "Nome"; case 2: return "Nascimento"; default: throw new RuntimeException("Solicitada uma coluna no JTable que não public int getcolumncount() { return public int getrowcount() { if(animaistabela!=null) return animaistabela.size(); else return 0; 15

16 Tela de edição de animais Sobrecarregue os seguintes métodos em public Object getvalueat(int linha, int coluna) { switch(coluna) { case 0: return animaistabela.get(linha).getid(); case 1: return animaistabela.get(linha).getnome(); case 2: return animaistabela.get(linha).getnascimento(); default: throw new RuntimeException("Solicitada uma coluna no JTable que não existe"); 16

17 Tela de edição de animais Vamos criar agora uma tela para manutenção de animais Tela disponível quando o usuário clica no botão Animais Na ViewPrincipal adicione as propriedades: Jpanel chamado conteudomanutencaoanimais Botão btnvoltar Jtable chamado tabelaanimais Um atributo do tipo ExibicaoAnimais public class ViewPrincipal extends JFrame { //itens da tela principal private JButton btnanimais = new JButton("Animais"); private JButton btnespecies = new JButton("Espécies"); private JPanel conteudomenuprincipal; //itens da janela de animais private JButton btnvoltar = new JButton("Voltar"); private JPanel conteudomanutencaoanimais; private ExibicaoAnimais modeloexibicaoanimaistabela; private JTable tabelaanimais; //... 17

18 Tela de edição de Animais Na ViewPrincipal adicione os seguintes métodos public void exibirtelaanimais(list<animal> animaisparaexibir) { modeloexibicaoanimaistabela.setanimaistabela(animaisparaexibir); // tamanho inicial da janela em pixels this.setpreferredsize(new Dimension(400, 400)); this.setcontentpane(conteudomanutencaoanimais); this.pack(); public void addbtnvoltarlistener(actionlistener voltarlistener) { btnvoltar.addactionlistener(voltarlistener); 18

19 Tela de edição de Animais No final do construtor da ViewPrincipal (após this.exibirtelainicial()), adicione o seguinte modeloexibicaoanimaistabela = new ExibicaoAnimais(); tabelaanimais = new JTable(modeloExibicaoAnimaisTabela); conteudomanutencaoanimais = new JPanel(); SpringLayout layoutmanutencaoanimais = new SpringLayout(); conteudomanutencaoanimais.setlayout(layoutmanutencaoanimais); conteudomanutencaoanimais.add(tabelaanimais); conteudomanutencaoanimais.add(btnvoltar); layoutmanutencaoanimais.putconstraint(springlayout.west, tabelaanimais, 5, SpringLayout.WEST, conteudomanutencaoanimais); layoutmanutencaoanimais.putconstraint(springlayout.west, btnvoltar, 300, SpringLayout.WEST, conteudomanutencaoanimais); 19

20 Tela de edição de Animais Na ViewPrincipalController Modifique a classe aninhada BtnAnimaisListener Crie uma classe BtnVoltarListener Adicione o listener no botão voltar no construtor 20

21 Tela de edição de Animais public class ViewPrincipalController { private ViewPrincipal view; private AnimalDAO animaldao = new AnimalDAO(); public ViewPrincipalController(ViewPrincipal view) { this.view = view; this.view.addbtnanimaislistener(new BtnAnimaisListener()); this.view.addbtnvoltarlistener(new BtnVoltarListener()); private class BtnAnimaisListener implements ActionListener public void actionperformed(actionevent e) { List<Animal> animais; try { animais = animaldao.listar(); catch (Exception ex) { throw new RuntimeException(ex); view.exibirtelaanimais(animais); private class BtnVoltarListener implements ActionListener public void actionperformed(actionevent e) { view.exibirtelainicial(); 21

22 Tela de edição de Animais Rode o projeto e tudo deve funcionar! 22

23 Observações quanto ao MVC Note que criamos a camada de modelo nas aulas passadas sem nunca considerar a camada de visão Inclusive decidimos só agora que usaríamos uma janela swing A camada de visão criada somente entende o formato do modelo e exibe seus dados na tela Toda ação de usuário é coordenada pela camada de controle, que redireciona as telas para a view, e envia os comandos para o modelo Logo, criamos um projeto simples MVC em um sistema Coeso Desacoplado 23

24 Exercício Termine a aplicação de acordo com a descrição do trabalho disponível no site da disciplina 24

25 Referências e-summary.html index.html ml html 25

LPII Programando uma Cálculadora Simples Módulo III

LPII Programando uma Cálculadora Simples Módulo III Abra o Eclipse e crie um projeto de nome calculadorasimples. Em seguida crie um frame de nome calculadora na opção New >> Other que apresenta a tela: Inclua os componentes button e TextField, conforme

Leia mais

MÓDULO 4 SWING Parte 3

MÓDULO 4 SWING Parte 3 Aplicações de Linguagem de Programação Orientada a Objetos 2ºsem/2011 (Professores: Tiago e Daniele) // Exemplo11 Ação do Mouse import javax.swing.*; import java.awt.*; import java.awt.event.actionevent;

Leia mais

Exemplo Threads com Swing:

Exemplo Threads com Swing: Exemplo Threads com Swing: Fazer uma aplicação Java com 2 JLabel, com um ponto final, em formatação Negrito, tamanho 70 e um JButton. A aplicação deve conter 2 Threads e um método. O método deve fazer

Leia mais

Componente JOptionPane Layout Null Tratamento de Eventos. Action Listener

Componente JOptionPane Layout Null Tratamento de Eventos. Action Listener Interface Gráfica Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Agenda Componente JOptionPane Layout Null Tratamento de Eventos Action Listener Componente JOptionPane javax.swing.joptionpane

Leia mais

LINGUAGEM DE PROGAMAÇÃO II Criando uma Classe

LINGUAGEM DE PROGAMAÇÃO II Criando uma Classe Turma 2112 LINGUAGEM DE PROGAMAÇÃO II Criando uma Classe Data 29-05-17 Para criar um projeto novo utilize a URL http://mz.pro.br/lpii/lpii_160215.pdf. Vamos construir um programa que apresente a tela abaixo:

Leia mais

HABILITANDO A IDE DO ECLIPSE

HABILITANDO A IDE DO ECLIPSE HABILITANDO A IDE DO ECLIPSE Até agora configuramos todos os atributos dos objetos inseridos em um frame. Vamos agora habilitar a IDE do Eclipse. Siga os passos abaixo: 1. File >>New >> Java Project 2.

Leia mais

Elaborando as Interfaces Aulas 43, 44 e 45

Elaborando as Interfaces Aulas 43, 44 e 45 Elaborando as Interfaces Aulas 43, 44 e 45 RESOLUÇÃO DOS EXERCÍCIOS, MÉTODOS E JPROGRESSBAR Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 43, 44 E 45. 1 ATIVIDADE

Leia mais

Vector Java. Empregado.java

Vector Java. Empregado.java Vector Java Empregado.java /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools Templates * and open the template in the editor.

Leia mais

Criando interfaces com o usuário. Continuação

Criando interfaces com o usuário. Continuação Criando interfaces com o usuário Continuação A diferença básica entre um objeto Window e um objeto JFrame é que o JFrame representa a janela principal de uma aplicação e o Window apenas uma janela a mais.

Leia mais

MODEL-VIEW-CONTROLER. Prof. Fellipe Aleixo

MODEL-VIEW-CONTROLER. Prof. Fellipe Aleixo MODEL-VIEW-CONTROLER Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) O Que é MVC? Modelo de arquitetura de software Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo

Leia mais

Is Event Dispatcher Threade (Animation)

Is Event Dispatcher Threade (Animation) JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Is Event Dispatcher Threade (Animation) FACULDADE DE TECNOLOGIA SENAC PELOTAS Nome do aluno: João Vitor Ávila dos Santos Identificação da Turma: 3º Semestre/

Leia mais

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em: Aulas 16, 17, e 18

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em:  Aulas 16, 17, e 18 Elaborando Interfaces Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 16, 17, e 18 1 Todos os componentes JLabel JTextField JButton Além do próprio JFrame2 Todos os

Leia mais

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Nona aula

Prof. Rogério Albuquerque de Almeida. Programação Orientada a Objetos II Java Nona aula Programação Orientada a Objetos II Java Nona aula 1 Programação Orientada a Objeto II Interface Gráfica AWT E SWING Criação de interfaces gráficas básicas Exercícios 2 Interface gráfica em Java As aplicações

Leia mais

Programação Java. Construção de Interface gráfica. Processo Básico: OO + Eventos. Exemplo

Programação Java. Construção de Interface gráfica. Processo Básico: OO + Eventos. Exemplo Programação Java Construção de Interface gráfica Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Processo Básico: OO + Eventos Instanciar os componentes de interface por exemplo,

Leia mais

MANIPULAÇÃO DE EVENTOS

MANIPULAÇÃO DE EVENTOS MANIPULAÇÃO DE EVENTOS Ao término desse capítulo você terá aprendido: Tipos de eventos; Manipulação de eventos de componentes; Manipulação de eventos do mouse; Manipulação de eventos do teclado; Interfaces

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Graphical user Interfaces Objetivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs - Utilizar classes do package javax.swing - Usar um modelo de programação

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Threads em Java Paulo Ricardo Lisboa de Almeida 1 Temos várias interfaces e classes que podem facilitar nossa vida Runnable Callable Thread... 2 Para a aula de sistemas operacionais,

Leia mais

Programação Gráfica em Java Alguns Componentes javax.swing

Programação Gráfica em Java Alguns Componentes javax.swing Programação Gráfica em Java Alguns Componentes javax.swing Objetivo: Ao final da aula o aluno deverá ser capaz de empregar alguns componentes visuais do pacote javax.swing para produzir interfaces gráficas.

Leia mais

Exercício 1: Criar um programa que utiliza que desenha uma interface gráfica tal como descrito na Figura 1.1.

Exercício 1: Criar um programa que utiliza que desenha uma interface gráfica tal como descrito na Figura 1.1. 9ª LISTA DE EXERCÍCIOS INTERFACES GRÁFICAS DE USUÁRIO Disciplina: PC-II Exercício 1: Criar um programa que utiliza que desenha uma interface gráfica tal como descrito na Figura 1.1. Figura 1.1: Primeira

Leia mais

Elaborando as Interfaces Aulas 31, 32 e 33

Elaborando as Interfaces Aulas 31, 32 e 33 Elaborando as Interfaces Aulas 31, 32 e 33 JList e JComboBox Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 31, 32 e 33. 1 ATIVIDADE DA SEMANA PASSADA ELABORE UMA

Leia mais

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Font size Animation FACULDADE DE TECNOLOGIA SENAC PELOTAS

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Font size Animation FACULDADE DE TECNOLOGIA SENAC PELOTAS JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: Font size Animation FACULDADE DE TECNOLOGIA SENAC PELOTAS Nome do aluno: Guilherme Faria Quental Identificação da Turma: Análise e Desenvolvimento de Sistemas

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula de Revisão para AV1

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula de Revisão para AV1 Aula de Revisão para AV1 Conteúdo Programático desta aula Rever os principais conceitos apresentados Resolução de Exercícios para a prova Quantas bibliotecas de GUI existem em Java: a) Uma: Swing b) Duas:

Leia mais

JTextArea JMenuBar JTable JDesktopPane e JInternalFrame

JTextArea JMenuBar JTable JDesktopPane e JInternalFrame Interface Gráfica Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Agenda JTextArea JMenuBar JTable JDesktopPane e JInternalFrame Componente JTextArea Fornece uma área para manipulação

Leia mais

Como tratar eventos - A interface ActionListener e o método actionperformed

Como tratar eventos - A interface ActionListener e o método actionperformed Se você parar para reparar, um aplicativo gráfico é como se fosse como um cardápio de um restaurante. Você chega, faz seus pedidos e suas ordens são atendidas. Cada pessoa vai fazer pedidos diferentes,

Leia mais

. Uma instância da classe JTextField gera uma instância da classe ActionEvent quando o objecto está activo e o utilizador pressiona a tecla ENTER.

. Uma instância da classe JTextField gera uma instância da classe ActionEvent quando o objecto está activo e o utilizador pressiona a tecla ENTER. Interfaces Gráficas e Eventos - 18 A classe JTextField. Um campo de texto, permite ao utilizador introduzir uma única linha de texto. Uma instância da classe JTextField gera uma instância da classe ActionEvent

Leia mais

Roteiro. Introdução. Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans. Objetos. Princípios da Orientação a Objetos

Roteiro. Introdução. Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans. Objetos. Princípios da Orientação a Objetos Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans Roteiro Introdução Conceitos de Oientação a Objetos A Linguagem Java NetBeans (www.netbeans.org) Fernando Vieira Paulovich paulovic@icmc.usp.br

Leia mais

Linguagem de Programação Visual

Linguagem de Programação Visual Linguagem de Programação Visual Unidade 4 - Introdução à API Swing - JOptionPane Curso Técnico em Informática SUMÁRIO INTRODUÇÃO... 3 API SWING... 3 A CLASSE JOPTIONPANE... 3 PRINCIPAIS MÉTODOS DA CLASSE

Leia mais

Aula 2 Even e to t s d o M ouse

Aula 2 Even e to t s d o M ouse Aula 2 Eventos do Mouse Sumário Considerações iniciais Elementos de uma aplicação Principais tipos de eventos em Java: (WindowEvent, MouseEvent, ActionEvent, KeyEvent) Capturando os eventos: Definindo

Leia mais

Interfaces Gráficas com Swing. Professor Leonardo Larback

Interfaces Gráficas com Swing. Professor Leonardo Larback Interfaces Gráficas com Swing Professor Leonardo Larback SWING Swing é um widget toolkit para uso em Java. Surgiu como sucessor do Abstract Window Toolkit (AWT) à partir do java 1.2. Como uma das principais

Leia mais

Elaborando as Interfaces dos trabalhos das aulas 28, 29 e 30.

Elaborando as Interfaces dos trabalhos das aulas 28, 29 e 30. Elaborando as Interfaces dos trabalhos das aulas 28, 29 e 30. Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 28, 29 e 30. 1 Exercício Crie uma tela com os menus Menu

Leia mais

Interfaces Gráficas (GUIs) em Java usando Swing Parte I - O básico

Interfaces Gráficas (GUIs) em Java usando Swing Parte I - O básico Interfaces Gráficas (GUIs) em Java usando Swing Parte I - O básico Prof. Esp. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java/aulajava07a09.pptx Existe grande quantidade de funcionalidades

Leia mais

Adding User Interaction

Adding User Interaction Adding User Interaction if62c - Fundamentos de Programação 1/2014 professores Danillo Leal Belmonte (belmonte@utfpr.edu.br) e Robinson Vida Noronha (vida@utfpr.edu.br) 1 Estratégias Adicionar ações isoladas

Leia mais

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){

Leia mais

Introdução à Programação Gráfica em Java

Introdução à Programação Gráfica em Java Introdução à Programação Gráfica em Java U N I V E R S I D A D E T E C N O L Ó G I C A F E D E R A L D O P A R A N Á D E P A R T A M E N T O A C A D Ê M I C O D E E L E T R Ô N I C A P R O F. V I T O R

Leia mais

package br.com.cadastro.visao;

package br.com.cadastro.visao; package br.com.cadastro.visao; import java.awt.eventqueue; import java.awt.event.actionlistener; import javax.swing.jframe; import javax.swing.jpanel; import javax.swing.border.emptyborder; import br.com.cadastro.modelo.cliente;

Leia mais

Tratamento de Erros. Sérgio Luiz Ruivace Cerqueira

Tratamento de Erros. Sérgio Luiz Ruivace Cerqueira Tratamento de Erros Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Agenda Introdução Try, catch, finally Unchecked Exceptions Como levantar exceções Boas práticas O problema Calculadora numero1:

Leia mais

COM220 Aula 17: Interface Gráfica Containers Swing

COM220 Aula 17: Interface Gráfica Containers Swing COM220 Aula 17: Interface Gráfica Containers Swing Prof. Laércio Baldochi Containers Swing Janelas JFrame Painéis JPanel Applets JApplet Caixas de diálogo JDialog JOptionPane JFrame Componente principal

Leia mais

Model-View-Controller (MVC)

Model-View-Controller (MVC) Model-View-Controller (MVC) por Rodrigo Rebou ças de Almeida Objetivo Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo da aplicação (Control) A idéia é permitir que

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Graphical user Interfaces Objetivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs - Utilizar as classes JFrame, JButton, JLabel, ImageIcon, JTextField,

Leia mais

Aplicações de Linguagem de Programação Orientada a Objeto

Aplicações de Linguagem de Programação Orientada a Objeto Aplicações de Linguagem de Programação Orientada a Objeto Eventos Professora Sheila Cáceres Programação Orientada a Eventos No modelo imperativo tradicional, o programador determina a ordem de entrada

Leia mais

Interfaces Gráficas POO. Prof. Márcio Delamaro

Interfaces Gráficas POO. Prof. Márcio Delamaro Interfaces Gráficas POO Prof. Márcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/83 GUI Interface Gráfica do Usuário Em Java usamos o pacote Swing javax.swing Possui um conjunto

Leia mais

Programação Orientada a Objetos SANTOS, Rafael (PLT)

Programação Orientada a Objetos SANTOS, Rafael (PLT) Programação Orientada a Objetos SANTOS, Rafael (PLT) Possibilita atribuições em sequência na mesma instrução Retorna o valor atribuído Atribuições compostas: incluem a própria variável: +=, *=, -=, etc

Leia mais

A classe JTextField

A classe JTextField 8.1.4. A classe JTextField É uma caixa para digitação do usuário que permite a inclusão de um texto de apenas uma única linha. Principais métodos setbounds(int x, int y, int Width, int Height) define as

Leia mais

Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27.

Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27. Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27. Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 25, 26 e 27. 1 Na aula da semana passada ficaram para

Leia mais

Componentes GUI A aparência e maneira como um usuário pode interagir com componentes AWT diferem de acordo com a plataforma. Componentes Swing permite

Componentes GUI A aparência e maneira como um usuário pode interagir com componentes AWT diferem de acordo com a plataforma. Componentes Swing permite Componentes GUI GUI Grafical User Interface São construídas a partir de componentes GUI chamados de controles ou widgets (windows gadgets engenhocas de janela). Ex: JOptionPane fornece caixas de diálogos

Leia mais

Aula 11: Interfaces gráficas (1/2): elementos de interface Swing

Aula 11: Interfaces gráficas (1/2): elementos de interface Swing Aula 11: Interfaces gráficas (1/2): elementos de interface Swing Motivação como fazer programas com interface gráfica em Java? solução: uso de pacotes (listados na API) AWT (java.awt.*) Swing (javax.swing.*)

Leia mais

Prof. Msc. Vladimir Camelo

Prof. Msc. Vladimir Camelo APLICATIVOS DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS (ALPOO) PADRÃO MVC (Model-View-Controller) Prof. Msc. Vladimir Camelo O padrão arquitetural MVC (Model-View-Controller) foi criado no contexto

Leia mais

Teste de Software: Existe Isto? Jorge Fernandes Junho de 2004

Teste de Software: Existe Isto? Jorge Fernandes Junho de 2004 Teste de Software: Existe Isto? Jorge Fernandes Junho de 2004 public class Calc { private int estadointeracao; private int operacaoselecionada; private long acumulador0; private long acumulador1; private

Leia mais

Continuação... Criando a Interface e adiante

Continuação... Criando a Interface e adiante Continuação... Criando a Interface e adiante Racepitulando 1. Criar um projeto web: JavaServer Faces + Tomcat + Primefaces 2. Criar um banco de dados Postgresql 3. Adicionar os jars: javax.persistence

Leia mais

nome = n; cargo = c; salario = s; public void print() { System.out.println(nome cargo salario); public void aumento( double fator){

nome = n; cargo = c; salario = s; public void print() { System.out.println(nome cargo salario); public void aumento( double fator){ UNIVERSIDADE FEDERAL DE SANTA CATARINA - Departamento de Automação e Sistemas PROGRAMAÇÃO DE SISTEMAS AUTOMATIZADOS - 2016/2 - P2 Nome: ------------------------------------------------------------------------------------------------------

Leia mais

Classes e Objetos POO

Classes e Objetos POO Classes e Objetos POO Prof. Marcio Delamaro 1/40 POO (wikipedia) Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which are data structures that contain data,

Leia mais

Unidade 12: Programação de Banco de Dados com Java Prof. Daniel Caetano

Unidade 12: Programação de Banco de Dados com Java Prof. Daniel Caetano Linguagem de Programação 1 Unidade 12: Programação de Banco de Dados com Java Prof. Daniel Caetano Objetivo: Construir uma aplicação Java que interaja com Banco de Dados INTRODUÇÃO Nas aulas anteriores

Leia mais

Encerrando Introdução a Objetos e Classes Redefinição de Métodos (1)

Encerrando Introdução a Objetos e Classes Redefinição de Métodos (1) Encerrando Introdução a Objetos e Classes Redefinição de Métodos (1) Overriding x Overload Métodos de diferentes classes que possuem uma relação de herança. Métodos possuem mesmo nome, mesma assinatura

Leia mais

Para entender o conceito de objetos em programação devemos fazer uma analogia com o mundo real:

Para entender o conceito de objetos em programação devemos fazer uma analogia com o mundo real: Introdução a Orientação a Objetos com Java Autor: Professor Victor Augusto Zago Menegusso. Orientação a Objetos É um paradigma de programação que define a estrutura de um programa baseado nos conceitos

Leia mais

Prof. Fernando V. Paulovich 25 de julho de SCC Programação Orientada a Objetos

Prof. Fernando V. Paulovich   25 de julho de SCC Programação Orientada a Objetos SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade de São

Leia mais

Implementar um exemplo de relacionamento entre classes um para muitos (1:N) e um para um (1:1). Sistema para uma Promotora de Evento Agenda Anual

Implementar um exemplo de relacionamento entre classes um para muitos (1:N) e um para um (1:1). Sistema para uma Promotora de Evento Agenda Anual Aula 09 Objetivo Implementar um exemplo de relacionamento entre classes um para muitos (1:N) e um para um (1:1). Sistema para uma Promotora de Evento Agenda Anual Banco de Dados 1. Crie um novo projeto

Leia mais

Objectivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs

Objectivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs Interfaces Gráficas e Eventos - 1 Objectivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs - Utilizar as classes JFrame, JButton, JLabel, ImageIcon,

Leia mais

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista

Leia mais

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; } Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Criando objeto Definindo valores para os atributos do objeto Método construtor Definindo valores padrão para os atributos dos

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador)

Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador) Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça Problema: Definir uma dependência um-para-muitos entre objetos, de forma quando o estado

Leia mais

Tiago Alves de Oliveira. Tiago Alves de Oliveira

Tiago Alves de Oliveira. Tiago Alves de Oliveira Tiago Alves de Oliveira 1 Tiago Alves de Oliveira Os containers que encontramos no Swing são os objetos que irão hospedar e organizar os outros componentes, como botões, edits, labels, etc... Swing possui

Leia mais

Levantamento de classes (Análise de casos de uso)

Levantamento de classes (Análise de casos de uso) Plano Levantamento de classes (Análise de casos de uso) Prof. Cesar Augusto Tacla Levantamento no método APOO Projeto por padrões: MVC e Observador Estereótipos de classes Visão geral do método Engenharia

Leia mais

Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos

Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos 1. Para a construção de uma aplicação gráfica se faz necessário conceber a interface de aplicação, identificando-se

Leia mais

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista

Leia mais

WINDOWS FORMS APPLICATION - Aplicação (Programa) que não usa a CONSOLE

WINDOWS FORMS APPLICATION - Aplicação (Programa) que não usa a CONSOLE WINDOWS FORMS APPLICATION - Aplicação (Programa) que não usa a CONSOLE 1. Introdução. Uma Aplicação Windows Forms consiste em programas GRÁFICOS fundamentados no conceito de JANELAS que, no Visual Studio,

Leia mais

Programação Orientada a Objetos (utilizando C#) Professor Emiliano S. Monteiro Versão 12 Out/2016.

Programação Orientada a Objetos (utilizando C#) Professor Emiliano S. Monteiro Versão 12 Out/2016. Programação Orientada a Objetos (utilizando C#) Professor Emiliano S. Monteiro Versão 12 Out/2016 4.1.6. Propriedades Como em qualquer linguagem Java ou C++, para acessar campos privados de uma classe,

Leia mais

Notas de Aula 09: Tratamento de exceções

Notas de Aula 09: Tratamento de exceções Notas de Aula 09: Tratamento de exceções Objetivos da aula: Compreender o conceito de exceção Aprender a tratar exceções nos programas Entender a hierarquia das exceções Criar e lançar uma exceção proprietária

Leia mais

JMENU, JDESKTOPPANE E JINTERNALFRAME

JMENU, JDESKTOPPANE E JINTERNALFRAME 1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPI JOÃO CÂMARA JMENU, JDESKTOPPANE E JINTERNALFRAME Nickerson Fonseca Ferreira nickerson.ferreira@ifrn.edu.br Antes de começar!

Leia mais

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em: Aulas 19, 20 e 21

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em:  Aulas 19, 20 e 21 Elaborando Interfaces Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 19, 20 e 21 1 PARAMOS AQUI NA AULA PASSADA Elabore a tela abaixo: (Valor 2,0 pontos) 2 Algumas

Leia mais

Introdução à Tecnologia Java 02/2012. Java Aula 06. Banco de Dados Exemplo com JTable 19/09/2012. Celso Olivete Júnior.

Introdução à Tecnologia Java 02/2012. Java Aula 06. Banco de Dados Exemplo com JTable 19/09/2012. Celso Olivete Júnior. Java Aula 06 Banco de Dados Exemplo com JTable Tratamento de Exceções 19/09/2012 Celso Olivete Júnior olivete@fct.unesp.br 1 Banco de dados exemplo com JTable permite exibir os dados do BD na forma de

Leia mais

Aula Prática JBCD - Introdução

Aula Prática JBCD - Introdução Aula Prática JBCD - Introdução Paulo Ricardo Lisboa de Almeida 1 Instanciando a aplicação Clone o projeto da aula passada com o Git (disponível no site da disciplina) Suba o banco de dados Crie as tabelas

Leia mais

Linguagem de programação 2 GUI

Linguagem de programação 2 GUI Instituto Federal de Minas Gerais Campus Ponte Nova Linguagem de programação 2 GUI Professor: Saulo Henrique Cabral Silva GUI - Graphical User Interface 2 Interfaces gráficas Possibilita usar computadores

Leia mais

Introdução à construção de GUIs

Introdução à construção de GUIs 1 de 5 21/10/2009 14:53 Introdução à construção de GUIs Contribuição de Saleem Gul e Tomas Pavek, mantido por Ruth Kusterer e Patrick Keegan Este tutorial de iniciante ensina como criar uma interface de

Leia mais

Caso não exista nenhum listener registado no objecto que gera o evento, este não terá qualquer efeito.

Caso não exista nenhum listener registado no objecto que gera o evento, este não terá qualquer efeito. Interfaces Gráficas e Eventos - 10 Programação por eventos Um evento ocorre quando o utilizador interage com um objecto gráfico:. manipular um botão com o rato;. introduzir texto num campo de texto. seleccionar

Leia mais

Herança (parte 2) Redefinição de métodos AULA 11

Herança (parte 2) Redefinição de métodos AULA 11 Introdução a Programação IF669 http://www.cin.ufpe.br/~if669 Herança (parte 2) Redefinição de métodos AULA 11 Ricardo Massa F. Lima rmfl@cin.ufpe.br Sérgio C. B. Soares scbs@cin.ufpe.br Na aula passada

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 1- Interfaces Gráficas com Swing

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 1- Interfaces Gráficas com Swing Aula 1- Interfaces Gráficas com Swing Conteúdo Programático desta aula Explorar o pacote Swing para desenvolver Interfaces em Java Utilização de Interfaces gráficas para interagir com objetos previamente

Leia mais

Gerenciadores de Layout

Gerenciadores de Layout Gerenciadores de Layout Mário Antonio Meireles Teixeira DEINF UFMA Baseado em material original de João Carlos Pinheiro CEFET/MA 1 Objetivos Apresentar os gerenciadores de layout: FlowLayout BorderLayout

Leia mais

Testes Unitários com JUnit

Testes Unitários com JUnit Testes Unitários com JUnit Por: Luiz Gustavo Stábile de Souza http://luizgustavoss.wordpress.com Abril/2009 Motivação Apesar de já fazer um certo tempo que escrevi a primeira versão deste tutorial, o assunto

Leia mais

WINDOWS FORMS APPLICATION - Aplicação (Programa) que não usa a CONSOLE

WINDOWS FORMS APPLICATION - Aplicação (Programa) que não usa a CONSOLE WINDOWS FORMS APPLICATION - Aplicação (Programa) que não usa a CONSOLE Uso de ELEMENTOS GRÁFICOS 1. Introdução. Uma Aplicação Windows Forms consiste em programas GRÁFICOS fundamentados no conceito de JANELAS

Leia mais

Programação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes -

Programação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes - Programação Java - Herança, Classes Abstratas e Interfaces - Marco Fagundes mfagundes@tre-pa.gov.br 1 Tópicos Herança Ligação Dinâmica Polimorfismo 2 Herança Herança é um conceito que mapeia as classes

Leia mais

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em: Aulas 16, 17, e 18

Elaborando Interfaces. Prof. André Aparecido da Silva Disponível em:   Aulas 16, 17, e 18 Elaborando Interfaces Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 16, 17, e 18 1 Pensando nesta tela 2 As Etiquetas ou rótulos JLabel 3 As caixas de textos JTextField

Leia mais

Layout. Programação Orientada a Objetos Java. Prof. Geraldo Braz Junior. Baseado em material original de João Carlos Pinheiro CEFET/MA

Layout. Programação Orientada a Objetos Java. Prof. Geraldo Braz Junior. Baseado em material original de João Carlos Pinheiro CEFET/MA Layout Programação Orientada a Objetos Java Prof. Geraldo Braz Junior Baseado em material original de João Carlos Pinheiro CEFET/MA Objetivos Apresentar os gerenciadores de layout: FlowLayout BorderLayout

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Aula de Hoje Abstração de Dados Classes e Objetos Definição de Métodos Métodos com parâmetro Abstração de Dados Processo mental através do qual

Leia mais

Interfaces. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.

Interfaces. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno. Interfaces Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Interfaces É utilizada para agrupar conceitos em

Leia mais

Desenvolvimento de Aplicativos Android

Desenvolvimento de Aplicativos Android Desenvolvimento de Aplicativos Android Criando uma Interface Simples A partir do diretório res/layout/ abra o activity_main.xml. Este arquivo XML define o layout da sua activity. Ele contém o texto padrão

Leia mais

Exercícios de fixação: Listas

Exercícios de fixação: Listas Exercícios de fixação: Listas Exercício 1 : Inlcuindo o driver ao seu projeto 1. No Eclipse, vamos criar um novo projeto chamado CursoJavaJDBC. 2. Copie o driver do MySQL para o seu projeto. a. localize

Leia mais

Interfaces POO. Prof. Marcio Delamaro

Interfaces POO. Prof. Marcio Delamaro Interfaces POO Prof. Marcio Delamaro Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP 1/41 O que é interface É um template de classe Outras classes podem seguir esse template Chamamos isso

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Herança Aula de Hoje Problema Considere uma empresa que tenha tipos de empregados no aplicativo de folha de pagamento Um empregado tem nome,

Leia mais

Componentes Parte 03

Componentes Parte 03 Componentes Parte 03 Prof. Edwar Saliba Júnior Setembro de 2012 Unidade 05 Componentes Parte 03 1 JTable Componente capaz de mostrar dados na tela de maneira tabular. Partes visuais do JTable: Título:

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS -INTERFACES GRÁFICAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

PROGRAMAÇÃO ORIENTADA A OBJETOS -INTERFACES GRÁFICAS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br PROGRAMAÇÃO ORIENTADA A OBJETOS -INTERFACES GRÁFICAS Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 2. Programação visual com a IDE Netbeans Projetos Tipos de projetos Desenvolvimento

Leia mais

Programação Gráfica Parte 3 Versão em Java 2006 PUCPR Tutoria de Jogos 1º Ano

Programação Gráfica Parte 3 Versão em Java 2006 PUCPR Tutoria de Jogos 1º Ano Programação Gráfica Parte 3 Versão em Java 2006 PUCPR Tutoria de Jogos 1º Ano Paulo V. W. Radtke pvwradtke@gmail.com http://www.ppgia.pucpr.br/~radtke/jogos/ AVISO IMPORTANTE!! Esta versão é dedicada exclusivamente

Leia mais

Criar um projeto ->. Criar no pacote entity a classe Funcionario com os atributos(idfuncionario, nome, sexo, ativo, salario). Criar construtor vazio, o construtor cheio, o tostring com todos os atributos

Leia mais

Exercícios sobre repetição. 1. Escreva um método que lê via teclado 8 números e retorna a quantidade de negativos.

Exercícios sobre repetição. 1. Escreva um método que lê via teclado 8 números e retorna a quantidade de negativos. Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Lista de exercícios 6 Exercícios sobre repetição 1. Escreva um método que lê via teclado 8 números e retorna

Leia mais

Exceções AULA 13. Ricardo Massa F. Lima Sérgio C. B. Soares

Exceções AULA 13. Ricardo Massa F. Lima Sérgio C. B. Soares Introdução a Programação IF669 http://www.cin.ufpe.br/~if669 Exceções AULA 13 Ricardo Massa F. Lima rmfl@cin.ufpe.br Sérgio C. B. Soares scbs@cin.ufpe.br Exceções Objetivo Depois desta aula você será capaz

Leia mais

Aula 2 Eventos do Mouse by Pearson Education do Brasil

Aula 2 Eventos do Mouse by Pearson Education do Brasil 1 11 Aula 2 Eventos do Mouse 11.13 Tratamento de evento de mouse 2 Eventos de mouse: Cria um objeto MouseEvent. Tratado por MouseListeners e MouseMotionListeners. MouseInputListener combina as duas interfaces.

Leia mais

Visitor. Um problema a resolver. Temos uma hierarquia de classes, provavelmente um Composite Exemplo: Numa rede elétrica, temos a seguinte hierarquia:

Visitor. Um problema a resolver. Temos uma hierarquia de classes, provavelmente um Composite Exemplo: Numa rede elétrica, temos a seguinte hierarquia: Um problema a resolver Temos uma hierarquia de classes, provavelmente um Composite Exemplo: Numa rede elétrica, temos a seguinte hierarquia: Página 1 de 13 Esta hierarquia está sendo usada num programa

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato

Leia mais