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

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

Linguagem de Programação. Diagrama de classes

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

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

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

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS

Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento

POO Fundamentos Parte III. Professor Vicente Paulo de Camargo

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 5- Tratamento de Eventos de Manipulação de textos

LÓGICA DE PROGRAMAÇÃO (JAVA) HERANÇA. Professor Carlos Muniz

Requisitos de sistemas

Herança. Prof. Fernando V. Paulovich 23 de agosto de 2010

Classes e Objetos INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II. Classes. Objetos. Um modelo para a criação de objetos

Aula 12 POO 1 Interface Gráfica no Java. Profa. Elaine Faria UFU

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

Programação OO em Java. Profa Andréa Schwertner Charão DELC/CT/UFSM

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

Programação Orientada a Objetos Relacionamentos entre classes

Programação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos

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

Linguagem de Programação II Implementação

Classes e Objetos em Java. Algoritmos e Programação I. Classes. Classes. Modificadores de Acesso. Classes. Revisão

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos

Aula 2 Even e to t s d o M ouse

1 Introdução e Conceitos básicos

Classes e Objetos. Sintaxe de classe em Java

Herança e Propriedades

1) Responda de acordo com os conceitos de orientação a objetos (0,5).

Manipulação de Eventos

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

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos

CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO

POO UML e Outros Conceitos. Prof. Vicente Paulo de Camargo

1) DADOS DA OBRA: Programando em Java 2 Teoria e Aplicações Rui Rossi dos Santos 2004 Axcel Books (

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

Classe Abstrata e Interface

Java Básico. Carga Horária: 32 horas. Pré-requisito: Lógica de Programação; JAVA. Conteúdo Programático

Manipulando Eventos em Java

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

Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces

Encapsulamento. Alberto Costa Neto DComp - UFS

PROGRAMAÇÃO ORIENTADA A OBJETOS: OCULTAR INFORMAÇÕES E ENCAPSULAMENTO

Herança e Polimorfismo

Introdução. Atributos em Java. Atributos. Acesso à atributos em Java. Atributo versus variável. Atributos, métodos e encapsulamento.

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

Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Diagrama de Classes. Régis Patrick Silva Simão. Régis Simão Diagrama de Classes 1/42

Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces

PROGRAMAÇÃO ORIENTADA A OBJETOS JAVA

Linguagem de Programação II Importando Classes/Pacotes

Lição 11 Herança, polimorfismo e interfaces

Programação Orientada a Objetos

Conceitos de Programação Orientada a Objetos

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

Java para Desktop. Programação Orientada à Objetos 2 JSE

Aula 9 Herança. Prof. Jefersson Alex dos Santos

Aula 3 POO 1 Classe e Objeto. Profa. Elaine Faria UFU

Linguagem de Programação Visual

Linguagem de Programação II Implementação

PROJETO ARQUITETURAL PARTE II: PADRÕES DE PROJETO. Projeto de Programas PPR0001

Módulo 5. Programação Orientada a Objetos. Programação Orientada a Objetos I Java (Rone Ilídio)

4 TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

Desenvolvimento Web TCC Turma A-1

Aula 4. TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS 2014 Marcelo Henrique dos Santos -

Pacotes Organizando suas classes e bibliotecas

UML. Modelando um sistema

Programação Orientada a Objetos II

Linguagem de Programação IV Introdução

Programação por Objectos. Java

Aula 5 POO 1 Encapsulamento. Profa. Elaine Faria UFU

Ex: carro_desportivo poderá ser uma subclasse de automóvel (carro_desportivo é_um automóvel)

A B Classe Genérica D A C. Classe Especializada. Classe Especializada. Características Herdadas

Transcrição:

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 Setembro,, 2006 Introdução Programação orientada a objetos tem se mostrado promissora Linguagem Java Independência de plataforma (Web( Web) Totalmente orientada a objetos Baseada em C++ Para novos aplicativos e não para a reescrita do que já existe Programação Orientada a Objetos Introdução Softwares cada vez mais complexos e maiores Necessidade de tornar a tarefa de programação mais produtiva Programação orientada a objetos (POO) tem se mostrado mais competitiva do que as abordagens anteriores Princípios da Orientação a Objetos O paradigma orientado a objetos define alguns princípios básicos que devem ser seguidos Abstração Encapsulamento Classe e Objeto Herança Polimorfismo Modularidade 1

Identificando Classes Um objeto representa uma entidade que é tangível e/ou visível Para se identificar objetos analise os substantivos Objetos semelhante (características e semântica) são agrupados em classes Membros da Classe: Métodos e Atributos O serviço oferecido por uma classe é definido via métodos As propriedades de uma classes são definidas via atributos O conteúdo dos atributos deve ser manipulado por métodos da classe Exemplo de Modelagem UML Funcionario Nome CPF alugarfilme() devolverfilme() cadastrarcliente() Modelando Relacionamentos Poucas classes trabalham sozinhas Cooperação entre classes para realizar algo Existem três tipos de relacionamentos: Dependências; Generalizações; e Associações Exemplo de Relacionamentos Locadora Pessoa Codificando Classes em Java Filme Cliente Funcionario Aluguel 2

Codificando Classes Codificando a Classe As classes Java devem ser implementadas dentro de arquivos (texto) com extensão.java. Cada arquivo deverá conter somente uma classe com pública O nome do arquivo deve ser o mesmo da única classe pública presente Codificando a Classe Codificando os Atributos Funcionario.java Codificando os Atributos private String nome; private int rg; private String telefone; Inicialização dos Atributos É possível no momento da declaração de um atributo, iniciá-lo com um valor; private String nome; private int rg = 12345; private String telefone; 3

Codificando Métodos Codificando Métodos private String nome; private int rg; private String telefone; public void cadastrarcliente(cliente cliente) { Codificando Métodos Acessadores e Modificadores Codificando Métodos Acessadores e Modificadores private String nome; public String getnome() { return nome; public void setnome(string nome) { this.nome = nome; Dicas para Codificação de Classes SEMPRE mantenha os atributos privados; SEMPRE inicialize os dados; Não use tipos básicos em demasia em uma classe; Use uma forma padrão de definição de classes, levando em consideração a visibilidade de seus membros. Uso de Classes Existentes Na maior parte das classes em Java, criam-se objetos, especifica-se se o estado inicial de cada um e depois se trabalha com os objetos; Classe obj; //cria-se a variável obj = new Classe(); //cria-se o objeto obj.metodo metodo(); //usa-se se o objeto 4

Programa Principal public class Principal { public static void main(string[] args) { System.out.println( Teste. ); Construtores Quando um objeto é criado seu construtor é chamado Um construtor Tem o mesmo nome da classe Pode ter um ou mais parâmetros Não retorna valor Não pode ser explicitamente chamados como um método da classe Codificando Relacionamentos Codificando Relacionamentos Normalmente as dependências nascem do código e não o contrário Não existe um comando para codificar associações Codificação de herança é muito simples Herança Herança Empregado Gerente Empregado Gerente public class Empregado { public class Gerente extends Empregado { 5

Introdução Programação Gráfica Java oferece dois pacotes básicos para a programação de interface gráfica: AWT e Swing Em um nível mais alto, uma janela em Java é denominada Quadro (Frame) Em AWT, a classe para implementar um quadro chama Frame e em Swing chama JFrame Criando um Quadro Para se criar um quadro usando o Swing, a classe JFrame deve ser derivada em uma nova classe public class FirstFrame extends JFrame { import javax.swing.*; Criando um Quadro public class FirstFrame extends JFrame { public FirstFrame() { settitle(" ("FirstFrame"); //dá um nome para o quadro setsize(300,200); //informa o tamamho do quadro setlocation(300,300); //posiciona o quadro q na tela public static void main(string[] args) ) { JFrame frame = new FirstFrame(); frame.setvisible setvisible(true); Resultado Camada de uma Janela 6

Hierarquia Gráfica Manipulação de Eventos Object JPanel Component JComponent Container Window Frame A monitoração do que está ocorrendo em uma interface gráfica é feita através de eventos Na manipulação de eventos, temos dois extremos: o originador (interface gráfica) e o ouvinte (quem trata) dos eventos Qualquer classe podem ser um ouvinte de um evento, para isso é necessário registrar essa classe como um ouvinte de uma classe originadora JFrame Diagrama Esquemático A Hierarquia de Eventos AWT Registra Ouvintes Originador EventObject InterfaceOuvinte Reage ao Evento Ouvinte Existem diferentes tipos de eventos destinados a ouvintes ActionEvent AdjustmentEvent FocusEvent KeyEvent MouseEvent WindowEvent A Hierarquia de Eventos AWT Existem diferentes interfaces ouvintes para esses eventos ActionListener AdjustmentListener FocusListener KeyListener MouseListener MouseMotionListener WindowListener Componentes Swing da Interface 7

O Padrão de Projeto Modelo- Visão-Controlador (MVC) O Swing segue a essência do padrão de projeto MVC Modelo armazena um conteúdo Visão exibe o conteúdo Controlador processa a entrada de dados do usuário O Padrão de Projeto Modelo- Visão-Controlador (MVC) Modelo Visão Controle Bibliografia Horstmann,, C. S., Cornell,, G. Core Java 2 : volume I Fundamentos. Makron Books,, 2004 Horstmann,, C. S., Cornell,, G. Core Java 2 : volume II Recursos Avançados. Makron Books,, 2004. Metsker,, S. J. Padrões de Projeto em Java TM. Bookman,, 2004 8