Sei sulla pagina 1di 32

Linguagem de Programao Orientada a Objetos com Java

Continuao 1 Aula

Linguagem de Programao Orientada a Objetos com Java

Introduo programao OO
Polimorfismo
Em grego quer dizer muitas formas e significa usar o mesmo nome para se referir a mtodos que trabalham de forma diferente. Reaes diferentes ao mesmo estmulo.
Conceito complementar ao de herana e que permite enviar a mesma mensagem a objetos distintos, onde cada objeto responde da maneira mais apropriada para a classe chamadora.

Linguagem de Programao Orientada a Objetos com Java

Introduo programao OO
Tipos de Polimorfismo
Sobreposio (overriding) S ocorre associada Herana. quando um mtodo definido na superclasse no serve da forma original para a subclasse. Logo, ele tem de ser redefinido. Como na redefinio, a assinatura deve ser mantida, o novo mtodo sobrepe o mtodo definido na superclasse.

Sobrecarga (overloading) Mtodos de mesmo nome, mas que possuem parmetros diferentes. No momento da chamada do mtodo, dependendo do parmetro, um mtodo ou outro ser chamado.

Linguagem de Programao Orientada a Objetos com Java

Introduo programao OO
Interfaces
Uma interface um esqueleto de uma classe (a forma que a classe deve ter), mostrando os mtodos que a classe ter quando algum a implementar. Uma interface , portanto, um modo de dizer, que voc precisa inserir algum cdigo para que o que foi disponibilizado funcione. um contrato de implementao.

Linguagem de Programao Orientada a Objetos com Java

Introduo programao OO
Interfaces
No possuem atributos. No podem ser instanciadas.

Todos os mtodos so abstratos (voc s coloca na interface a assinatura dos


mtodos). Deve ser definido o nome do mtodo, se tem tipo de retorno, e se recebe parmetros. A este conjunto de informaes sobre o mtodo d-se o nome de assinatura do mtodo

Linguagem de Programao Orientada a Objetos com Java

Introduo programao OO
O Mtodo Construtor
um mtodo que ser executado no momento da instanciao do objeto. a forma na qual o objeto dever ser criado.

Caso o programador no defina explicitamente um construtor, o java utiliza o construtor default da classe.
Ex.: Pessoa pessoa = new Pessoa();

Linguagem de Programao Orientada a Objetos com Java A linguagem Java - Viso Geral
Origem Caractersticas de Java J2EE Comeando com Java

Linguagem de Programao Orientada a Objetos com Java Origem


Linguagem originalmente desenvolvida para eletrodomsticos, portanto, simples e portvel. Foi projetada para ser uma linguagem com caractersticas modernas de programao. Nasceu considerando a Internet como ambiente operacional. De onde veio o nome Java?
Em 1990, um grupo de programadores da Sun, desenvolveu uma linguagem chamada Oak (carvalho); Em 1994, os engenheiros tiraram a Oak da prateleira para fazer um Web browser primitivo o WebRunner;
No final de 1994, a Oak havia se tornado uma sofisticada linguagem, mas este nome j era registrado, James Gosling escolheu o nome Java; H relatos de que se chama Java e tem como smbolo a xcara de caf porque James Gosling e cia. tomavam caf importado da ilha de Java no momento de sua criao.

Linguagem de Programao Orientada a Objetos com Java Java Caractersticas Gerais


O desenvolvimento em Java fortemente associado a um processo de software. Existem diversas ferramentas de apoio. Diversas bibliotecas auxiliares:
Arquivos, banco de dados, internet, arquitetura distribuda, acesso remoto, som, imagens ...

Adequao a diversas metodologias.


O desenvolvimento em Java fortemente associado a um processo de software.

Linguagem de Programao Orientada a Objetos com Java Java Caractersticas Tcnicas


Orientada ao Objeto - Java possui clara definio de interfaces e torna possvel
fornecer softwares reutilizveis.

Distribuda - Aplicaes Java podem abrir e acessar objetos atravs da rede via
URL's e com a mesma facilidades que os programadores usam quando acessam um sistema de arquivo local.

Robustez - uma linguagem fortemente tipada. Segurana - Java possibilita a construo de sistemas livre de vrus e livre de
adulteraes.

Arquitetura Neutra - Java foi projetada para suportar aplicaes em redes.

Portvel - As bibliotecas que so parte do sistema definem interfaces portveis com


implementaes para Unix, Windows e Macintosh.

Multithreaded - Java possui um sofisticado conjunto de primitivas de sincronizao.


Multithreading o caminho de construir aplicaes com mltiplos eventos.

Dinmica - Java foi projetada para se adaptar ao meio envolvido. uma linguagem
mais dinmica que C e C++.

Linguagem de Programao Orientada a Objetos com Java

3 Aula

Linguagem de Programao Orientada a Objetos com Java Java na prtica diria

(FINEP 2009 - CESPE ) Em orientao a objetos, o mecanismo que permite que caractersticas comuns a diversas classes sejam fatoradas em uma classe bsica o de: A) polimorfismo
B) Herana (Superclasse) C) agrupamento de classes D) agregao

Linguagem de Programao Orientada a Objetos com Java Java na prtica diria


Marque V ou F:
( V ) O polimorfismo possibilita que o mesmo nome possa ser utilizado em diferentes mtodos em uma mesma classe, desde que, por exemplo, as quantidades de parmetros sejam diferentes. ( V ) O uso de um mesmo nome para identificar diferentes implementaes dos mtodos pode ocorrer na definio de construtores.

( F ) Na hierarquia de classes, a herana mltipla ocorre quando existem diversas classes imediatamente abaixo da classe em questo. ( F ) As informaes em um programa desenvolvido segundo a orientao a objetos so armazenadas, por herana, nas classes.

Linguagem de Programao Orientada a Objetos com Java Java na prtica diria

Linguagem de Programao Orientada a Objetos com Java A linguagem Java Mudanas na Programao
Foram eliminadas dos cdigos Java:
Variveis e funes globais Ponteiros O Comando goto

Tipos fracos
Necessidade de Remoo de objetos

Linguagem de Programao Orientada a Objetos com Java A linguagem Java Nos bastidores
O que ocorre com um cdigo Java at sua utilizao?

Linguagem de Programao Orientada a Objetos com Java A linguagem Java Nos bastidores
Java Compilada e Interpretada?

Compilador .JAVA JAVAC Cdigo Fonte .CLASS

Interpretador (JVM)

JAVA Execuo

ByteCode

Linguagem de Programao Orientada a Objetos com Java A linguagem Java Nos bastidores
Compilao e Interpretao em Java.
Compilador Java (Windows) Interpretador Windows

Cdigo Java
Compilador Java (Linux)

Bytecodes Java (Independente de plataforma)

Interpretador Linux

Compilador Java (Mac) Interpretador Mac

Linguagem de Programao Orientada a Objetos com Java Plataformas e Verses de Java


Como o Java se distribui para proporcionar produtividade.

Palms

J2ME J2SE J2EE

Micro Edition

Celulares Dispositivos inteligentes

Standard Edition

Aplicaes convencionais Applets

Aplicaes Web

Enterprise Edition

Aplicaes Distribudas Aplicaes Transacionais

Linguagem de Programao Orientada a Objetos com Java A linguagem Java o JSDK (Java 2 Standard Development Kit)
J2SDK - o ambiente bsico de desenvolvimento disponibilizado pela Sun para desenvolvimento de programas em Java. Outras empresas tambm disponibilizam ferramentas de desenvolvimento com o mesmo conjunto de programas mas dentro de ambientes IDE

Linguagem de Programao Orientada a Objetos com Java Alguns programas que fazem parte do JSDK
javac: compila programas fonte e gera arquivos de classe no formato de bytecode. java: interpreta aplicaes escritas em Java. jdb: faz depurao da execuo de aplicaes e applets Java. javap: desassemblador de bytecodes. javadoc: gerador de documentao HTML a partir de programas fonte Java. appletviewer : carregador de applets sem usar web browsers.

Linguagem de Programao Orientada a Objetos com Java Java Integrated Development Environments (IDEs) e Editores
H vrias IDEs para desenvolvimento Java:
http://www.netbeans.org/ http://www.eclipse.org/ http://www.jcreator.com/ http://www.bluej.org/ http://www.jetbrains.com/idea/ http://www.borland.com/us/products/jbuilder/index.html http://www.oracle.com/technology/products/jdev/index.html

Linguagem de Programao Orientada a Objetos com Java A linguagem Java - Algumas referncias interessantes
http://www.apl.jhu.edu/~hall/java/IDEs.html http://www.portaljava.com.br http://www.mundojava.com.br http://www.javamagazine.com.br http://www.soujava.com.br http://www.j2eebrasil.com.br http://www.projava.com.br/ http://www.guj.com.br/ http://www.javafree.com.br http://java.sun.com http://www.argonavis.com.br http://www.javaworld.com

Linguagem de Programao Orientada a Objetos com Java

3 Aula

Linguagem de Programao Orientada a Objetos com Java A linguagem Java Preparando o ambiente Convenes importantes da programao Java:
Maisculas e minsculas fazem diferena.
Ex.: int num diferente de int Num.

Classes devem ser salvas em arquivos de mesmo nome com a extenso .java. Nome de Classes so sempre escritos com a primeira letra maiscula.
Ex: Pessoa, Carro, CarroEsporte, ContaCorrente.

Nome de atributos e mtodos sempre tm a primeira letra minscula.


Ex.: nomePessoa, idade, dataNascimento, consultarPotencia.

Linguagem de Programao Orientada a Objetos com Java A linguagem Java Preparando o ambiente A Varivel de Sistema Classpath
Informa mquina virtual Java e aos outros aplicativos onde procurar as classes Java. Somente tem influncia para as classes definidas pelo usurio ou outras classes Java que no faam parte do JDK (ex: pacotes acesso BD). Os valores de caminhos contidos na especificao do valor de CLASSPATH, indicando onde esto as classes, devem se referir a: Diretrios contendo classes Arquivos compactados contendo classes

A Varivel de Sistema Path


Deve conter o diretrio das classes nativas do JDK. Ex.: <diretrio java_home>/bin

Linguagem de Programao Orientada a Objetos com Java A linguagem Java Criando o primeiro programa Passos para a criao do primeiro programa em Java.

Editor ASCII

Arquivo .java
Compilador Java (javac) Arquivo .class

Linguagem de Programao Orientada a Objetos com Java A linguagem Java Criando o primeiro programa Anlise do primeiro programa: HelloWorld.java
Class define uma classe, de nome HelloWorld Comentrios em Java O nome do Arquivo o mesmo da Classe. static indica que a funo main pode ser utilizada sem que um objeto desta classe seja criado.

// Meu primeiro programa public class HelloWorld{ public static void main(String argv[]) {

System.out.println(Hello World!);
} }
public indica que a classe poder ser acessada por qualquer outra classe.

Todo programa Java deve ter uma classe que possui um mtodo main.

void especifica um tipo vazio, ou seja, esta funo no retorna nenhum valor

Linguagem de Programao Orientada a Objetos com Java Para ler dados da entrada padro (teclado), faa como descrito abaixo:
//no incio do arquivo, coloque:

import java.util.*; public class Leitura { public static void main(String args[ ]) {
// crie a varivel de leitura dos dados

Scanner s = new Scanner ( System.in );


// use os mtodos de leitura especficos do tipo desejado

System.out.print( "digite uma linha: " ); String linha = s.nextLine() ; // le a linha System.out.print( "digite um numero: " ); int i = s.nextInt() ; // le um inteiro System.out.print( "digite um numero: " ); double d = s.nextDouble() ; // le um ponto-flutuante

Linguagem de Programao Orientada a Objetos com Java

Para Compilar - No diretrio do arquivo-fonte escreva:


Javac HelloWorld.java <enter>

Para Executar - No diretrio do arquivo-fonte escreva:


Java HelloWorld <enter>

Linguagem de Programao Orientada a Objetos com Java


Observaes: Uma aplicao Java pode conter vrias classes: Cada classe pblica d origem a um arquivo *.class Uma delas dever conter o mtodo main() que representa o ponto inicial da execuo da aplicao.

Linguagem de Programao Orientada a Objetos com Java

Prxima Aula

Potrebbero piacerti anche