Documents

Apostila Java de Orientação a Objetos

Description
Unicamp
Categories
Published
of 118
20
Categories
Published
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Share
Transcript
  D EPARTAMENTO DE E NGENHARIA DE C OMPUTAÇÃO E A UTOMAÇÃO I NDUSTRIAL F ACULDADE DE E NGENHARIA E LÉTRICA E DE C OMPUTAÇÃO U NIVERSIDADE E STADUAL DE C AMPINAS Programação Orientada a Objetos:Uma Abordagem com Java  Ivan Luiz Marques Ricarte 2001  Sumário 1 Fundamentos da programação orientada a objetos 3 1.1 Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2 Objetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.3 Herança . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.4 Polimorfismo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2 Princípios da programação na linguagem Java 8 2.1 Tipos primitivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.2 Identificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.3 Expressões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3.1 Expressões retornando valores numéricos . . . . . . . . . . . . . . . . . . . 112.3.2 Expressões retornando valores booleanos . . . . . . . . . . . . . . . . . . . 122.3.3 Outros tipos de expressões . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.3.4 Controle do fluxo de execução . . . . . . . . . . . . . . . . . . . . . . . . . 132.3.5 Comentários . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.4 Operações sobre objetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.4.1 Arranjos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.4.2 Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.5 Classes em Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202.5.1 Pacotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202.5.2 Definição de classes em Java . . . . . . . . . . . . . . . . . . . . . . . . . . 212.5.3 O método main . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242.5.4 Visibilidade da classe e seus membros . . . . . . . . . . . . . . . . . . . . . 252.5.5 Classes derivadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.5.6 Classes abstratas e finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272.5.7 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.6 Exceções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.6.1 Tratamento de exceções . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302.6.2 Erros e exceções de runtime . . . . . . . . . . . . . . . . . . . . . . . . . . 312.6.3 Propagando exceções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322.6.4 Definindo e gerando exceções . . . . . . . . . . . . . . . . . . . . . . . . . 322.7 O ambiente de Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332.7.1 Ferramentas do Java SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . 342.7.2 Geração de código portátil . . . . . . . . . . . . . . . . . . . . . . . . . . . 341  Programação orientada a objetos com Java  Sumário 2.7.3 Desenvolvimento de aplicações . . . . . . . . . . . . . . . . . . . . . . . . 35 3 Uso das classes da API padrão de Java 37 3.1 Funcionalidades básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.2 Entrada e saída . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383.2.1 Transferência de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393.2.2 Transferência de bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403.2.3 Manipulação de arquivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413.2.4 Serialização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.3 Framework  de coleções . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433.4 Extensões padronizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 4 Desenvolvimento de aplicações gráficas 46 4.1 Apresentação gráfica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464.2 Interfaces gráficas com usuários . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474.2.1 Eventos da interface gráfica . . . . . . . . . . . . . . . . . . . . . . . . . . 474.2.2 Componentes gráficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504.2.3 Containers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544.2.4 Janelas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554.2.5 Gerenciadores de layout  . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574.3 Desenvolvimento de applets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654.3.1 Criação de applet  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664.3.2 Execução de applets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674.3.3 Passagem de parâmetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684.3.4 Contexto de execução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 5 Desenvolvimento de aplicações distribuídas 72 5.1 Programação cliente-servidor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725.1.1 Conceitos preliminares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.1.2 Aplicações TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755.1.3 Aplicações UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795.1.4 Aplicações HTTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 815.2 Acesso a bancos de dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835.2.1 Bancos de dados relacionais . . . . . . . . . . . . . . . . . . . . . . . . . . 845.2.2 SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855.2.3 JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 875.3 Servlets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 905.3.1 Ciclo de vida de um servlet  . . . . . . . . . . . . . . . . . . . . . . . . . . . 915.3.2 Fundamentos da API de servlet  s . . . . . . . . . . . . . . . . . . . . . . . . 925.4 Programação com objetos distribuídos . . . . . . . . . . . . . . . . . . . . . . . . . 945.4.1 Arquiteturas de objetos distribuídos . . . . . . . . . . . . . . . . . . . . . . 945.4.2 Java RMI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 965.4.3 Java IDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 A Palavras chaves de Java 117 c     2001 FEEC/UNICAMP 2  Capítulo 1 Fundamentos da programação orientadaa objetos Neste capítulo são apresentados os conceitos básicos que permeiam o uso das técnicas de orien-tação a objetos na programação, sempre utilizando a linguagem Java como motivador.Objetos são instâncias de classes, que determinam qual informação um objeto contém e como elepode manipulá-la.Um dos grandes diferenciais da programação orientada a objetos em relação a outros paradigmasde programação que também permitem a definição de estruturas e operações sobre essas estruturasestá no conceito de herança, mecanismo através do qual definições existentes podem ser facilmenteestendidas. Juntamente com a herança deve serenfatizada a importância dopolimorfismo, que permi-te selecionar funcionalidades que um programa irá utilizar de forma dinâmica, durante sua execução. 1.1 Classes A definição de classes e seus inter-relacionamentos é o principal resultado da etapa de projeto desoftware. Em geral, esse resultado é expresso em termos de alguma linguagem de modelagem, talcomo UML.Uma classe é um gabarito para a definição de objetos. Através da definição de uma classe,descreve-se que propriedades — ou atributos — o objeto terá.Além da especificação de atributos, a definição de uma classe descreve também qual o compor-tamento de objetos da classe, ou seja, que funcionalidades podem ser aplicadas a objetos da classe.Essas funcionalidades são descritas através de métodos. Um método nada mais é que o equivalentea um procedimento ou função, com a restrição que ele manipula apenas suas variáveis locais e osatributos que foram definidos para a classe.Uma vez que estejam definidas quais serão as classes que irão compor uma aplicação, assimcomo qual deve ser sua estrutura interna e comportamento, é possível criar essas classes em Java.Na Unified Modeling Language (UML), a representação para uma classe no diagrama de classesé tipicamente expressa na forma gráfica, como mostrado na Figura 1.1.Como se observa nessa figura, a especificação de uma classe é composta por três regiões: o nomeda classe, o conjunto de atributos da classe e o conjunto de métodos da classe.3
Search
Similar documents
View more...
Tags
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks
SAVE OUR EARTH

We need your sign to support Project to invent "SMART AND CONTROLLABLE REFLECTIVE BALLOONS" to cover the Sun and Save Our Earth.

More details...

Sign Now!

We are very appreciated for your Prompt Action!

x