Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota

Slides:



Advertisements
Apresentações semelhantes
TIPOS ABSTRATOS DE DADOS
Advertisements

ABSTRAÇÃO processo de representar um grupo de entidades através de seus atributos comuns feita a abstração, cada entidade particular (instância) do grupo.
Programação Orientada a Objetos*
Projeto 1.
Java: Pacotes e Modificadores de Visibilidade
Java: Pacotes e Modificadores de Visibilidade
Alexandre Parra Site: Linguagem Java Alexandre Parra Site:
Introdução a diagrama de classes e UML
Clique para editar o estilo do subtítulo mestre Desenvolvimento web com Java JAVA 5 – Declarações e Controles de Acesso.
Clique para editar o estilo do subtítulo mestre Desenvolvimento web com Java JAVA 5 – Declarações e Controles de Acesso.
Classes e objetos P. O. O. Prof. Grace.
Introdução a Programação Orientada a Objetos
Revisão POO Profa. Cintia Carvalho Oliveira
Curso de extensão em Desenvolvimento Web
Orientação a Objetos e Java Graduação em Ciência da Computação Paulo Borba © Centro de Informática, UFPE.
Classes, Objetos e Encapsulamento
Introdução a programação (if669cc)
Programação Orientada a Objetos com Java
Aula prática 13 Orientação a Objetos – C++ Parte 1
Singleton e Adapter Professor: Nazareno Andrade
O Fluxo de Implementação
Tópicos avançados em internet A
Programação I Aula 2 (Métodos)
Linguagem de Programação JAVA
Introdução a aplicativos Java
Tipos Abstratos de Dados
Paradigmas de Linguagens de Programação Linguagem Orientada a Objetos 1 Augusto Sampaio e Paulo Borba Departamento de Informática Universidade Federal.
Engenharia de Software e Sistemas Danilo Veras e Rebeka Gomes.
Referências: Booch, G. et al. The Unified Modeling Language User Guide
Cristiano Soares Rafael di Lego Roberto Nemirovsky Thiago Nascimento
if669 - Introdução à Programação
Programação Orientada à Objetos
Paradigmas da Programação – Semestre 1 – Aula 9 Professor: Eduardo Mantovani )
© Ricardo Pereira e Silva
Arquitetura: Visão Lógica
Sistemas operacionais
Java Kickstart, day 2 Semelhanças com linguagem C.
Monitoria IP ~if669 Garbage Collection e pacotes.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
1 Marcio de Carvalho Victorino JAVA. 2 Declaração de Atributos [ ] [transient] [volatile] [static] [final] ; controle de acesso –public, package (default),
Laboratório de Programação II Pacotes Visibilidade Referências a Objetos.
Classes Abstratas e Interfaces GX – Aula05 1.
Linguagens de Programação
R ECURSIVIDADE LPII Professora Lucélia. M ÉTODO R ECURSIVO Um método é considerado recursivo quando possui uma chamada para si próprio. Segundo Deitel,
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Tarciane Andrade Análise de Casos de Uso Tarciane Andrade
Orientação a Objetos e Java Graduação em Ciência da Computação Paulo Borba © Centro de Informática, UFPE.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Modificadores Programação II.
Conceitos de Orientação a Objetos zConceito de tipo zTipos Abstratos de Dados zMódulos/Pacotes zEncapsulamento.
Orientação a Objetos e Java Especialização em Tecnologias da Informação Paulo Borba © Centro de Informática,
OO com Java Luiz Carlos d´Oleron Roteiro de aula.
Engenharia de Software
Introdução Sintaxe Básica da Linguagem JAVA
Organizando seu código Classes, pacotes, modificadores. Padrões.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Projeto de Banco de Dados
Orientação a Objetos e Java Alexandre Mota  Centro de Informática, UFPE.
Módulo II Capítulo 1: Orientação a Objetos
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
Implementação Orientada a Objetos – Aula 09 Pacotes Prof. Danielle Martin Universidade de Mogi das Cruzes
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Projeto de Arquitetura de Software
Diagrama de Classes Modelagem e Programação Orientada a Objetos Curso Superior de Tecnologia em Sistemas para Internet Prof. Cristiano Stüpp Nunes
Polimorfismo com Interfaces Pacotes em Java Prof. Gustavo Wagner (Alterações) Prof. Tiago Massoni (Slides Originais) Desenvolvimento de Sistemas FATEC-PB.
Herança em Java Curso: Informática Disciplina: Programação Orientada a Objetos Prof. Abrahão Lopes
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
Transcrição da apresentação:

Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota

Pacotes Objetivo Depois desta aula você será capaz de desenvolver sistemas mais reusáveis e extensíveis, organizando as classes do sistema em “módulos” que podem ser analisados, reusados e modificados isoladamente ou com o auxílio de outros poucos “módulos”.

Pacotes Leitura prévia essencial Seções 4.6 e 6.5 do livro Java: how to program (de Harvey e Paul Deitel)

Tipos de Módulos em Java Classes –agrupam definições de métodos, atributos, inicializadores, etc. –definem tipos Pacotes –agrupam definições de classes relacionadas –estruturam sistemas de grande porte, facilitando a localização das classes –oferece um nível mais alto de abstração há mais classes do que pacotes

Pacotes e Diretórios As classes de um pacote são definidas em arquivos com o mesmo cabeçalho: package nomeDoPacote; Cada pacote é associado a um diretório do sistema operacional: –os arquivos.class das classes do pacote são colocados neste diretório –é recomendável que o código fonte das classes do pacote também esteja neste diretório

Nomeando Pacotes O nome de um pacote é parte do nome do seu diretório associado: o pacote exemplos.banco deve estar no diretório /home/phmb/exemplos/banco assumindo que o compilador Java foi informado para procurar classes em /home/phmb/ classpath

Pacotes e Subdiretórios Subdiretórios não correspondem a “subpacotes”, são pacotes como outros quaisquer Por exemplo, não existe nenhuma relação, além de lógica, entre exemplos e exemplos.banco: package exemplos; public class /*...*/ package exemplos.banco; public class /*...*/

Pacotes e Visibilidade de Declarações public –atributos, métodos, inicializadores e classes –declaração pode ser utilizada (é visível) em qualquer lugar private –atributos, métodos e inicializadores –declaração só pode ser utilizada na classe onde ela é introduzida

Pacotes e Visibilidade de Declarações protected –atributos, métodos e inicializadores –declaração só pode ser utilizada no pacote onde ela é introduzida, ou nas subclasses da classe onde ela é introduzida Ausência de modificador –atributos, métodos, inicializadores e classes –declaração só pode ser utilizada no pacote onde ela é introduzida

Reuso de Declarações As declarações feitas em um arquivo são visíveis em qualquer outro arquivo do mesmo pacote, a menos que elas sejam privadas Qualquer arquivo de um pacote pode usar as definições visíveis de outros pacotes, através do mecanismo de importação de pacotes...

Importação de Pacotes Importando definição de tipo específica: package a.b; import c.d.NomeDoTipo; public class { /*...*/ } Importando todas definições de tipo públicas: package a.b; import c.d.*; public class { /*...*/ }

Importação de Pacotes: Detalhes Tanto NomeDoTipo quanto a.b.NomeDoTipo podem ser usados no corpo de c.d c.d não pode definir um tipo com nome NomeDoTipo caso a importação tenha sido específica Importação de pacotes não é transitiva nem distribui sobre os arquivos de um pacote

Estruturando Aplicações com Pacotes Agrupar classes relacionadas, com dependência (de implementação ou conceitual) entre as mesmas Evitar dependência mútua entre pacotes: package a.b; import c.d.*; /*...*/ package c.d; import a.b.*; /*...*/ Sugere problemas de modelagem!

Estruturando Aplicações com Pacotes Estruturação típica de um sistema de informação: –vários pacotes para as classes da GUI, um para cada conjunto de telas associadas –um pacote para a classe fachada e exceções associadas –um pacote para cada coleção de negócio, incluindo as classes básicas, coleções de dados, interfaces, e exceções associadas –um pacote sistema.util contendo classes auxiliares de propósito geral

Pacotes da Biblioteca de Java Acesso a Internet e WWW ( java.net ) Applets ( java.applet ) Definição de interfaces gráficas ( java.awt ) Suporte a objetos distribuídos ( java.rmi ) Interface com Banco de Dados ( java.sql ) Básicos: threads e manipulação de strings ( java.lang ), arquivos ( java.io ), utilitários de propósito geral ( java.util )

Exercícios Estruture os exemplos de contas e bancos usando pacotes Implemente a classe ConjuntoContas usando a classe Vector ou a classe Hashtable (ambas do pacote java.util ).

Pacotes Resumo Importância de estruturar um sistema com pacotes Cláusula package Cláusula import, importação específica e importação genérica Pacotes e visibilidade de declarações Pacotes da biblioteca de Java

Pacotes Leitura adicional Capítulo 5 do livro Thinking in Java (de Bruce Eckel) Seções 4.5 e 4.9 do livro A Programmer’s Guide to Java Certification (de Khalid Mughal e Rolf Rasmussen) API de Java em