Escolar Documentos
Profissional Documentos
Cultura Documentos
NDICE
Introduo Programao Orientada a Objetos A Linguagem Java Objetos e Classes em Java Classes Essenciais Applets Classes Avanadas
Introduo
O QUE JAVA ?
Linguagem de Programao
Simples Orientada a Objetos Distribuda Portvel Robusta Segura Interpretada Independente de arquitetura Alta Performance Dinmica
O QUE JAVA ?
Linguagem de Programao
Todos os programas Java so compilados e interpretados O compilador transforma o programa em bytecodes independentes de plataforma O interpretador testa e executa os bytecodes
O QUE JAVA ?
Linguagem de Programao
Cada interpretador uma implementao da JVM Java Virtual Machine (ferramenta, browser, hardware) Write Once, Run Anywhere
O QUE JAVA ?
Plataforma Java
Uma plataforma o ambiente de hardware e software onde um programa executado A plataforma Java um ambiente somente de software Componentes: Java Virtual Machine (Java VM) Java Application Programming Interface (Java API)
Exemplo - Lmpada
Estados - ligada/desligada Comportamento - mudar de ligada para desligada mudar de desligada para ligada
O que herana?
A herana fornece um mecanismo poderoso e natural para organizao e estruturao de objetos Uma classe herda estados e comportamentos de sua superclasse
Construtor
A Linguagem Java
A LINGUAGEM JAVA
Comentrios
/* texto */
A LINGUAGEM JAVA
Tipos de dados
Inteiros: byte / short / int / long Reais: float / double Outros: char / boolean
Nomes de variveis
Srie de caracteres Unicode No pode ser palavra chave No pode ser nome de outra varivel ou classe
A LINGUAGEM JAVA
Inicializao
int i = 10; char c; c = X;
Variveis finais
final float pi = 3.14159;
(final tambm pode ser utilizado para mtodos. Os mtodos finais no podem ter subclasses)
A LINGUAGEM JAVA
Operadores
Atribuio: = Aritmticos: + - * Unrios: Lgicos:
++ == -!= < > <= >= / %
A LINGUAGEM JAVA
Instrues de controle de fluxo
Condicionais
if-else / switch-case (break)
Lao
for / while / do-while
Exceo
try-catch-finally (throw)
A LINGUAGEM JAVA
Vetores
Declarao
int[] arrayOfInts;
Inicializao
arrayOfInts = new int[10];
A LINGUAGEM JAVA
Strings
Declaraes e atribuies
String cde = cde; char data[] = { a, b, c }; String str = new String( data ); String cc = ab+cde;
As strings podem ser concatenadas atravs do operador + As strings no podem ser alteradas
A LINGUAGEM JAVA
Strings - Alguns Mtodos
.substring() .startsWith() .endsWith() .length() .toUpperCase() .toLowerCase() .replace() .charAt() .trim .equals() .compareTo() .equalsIgnoreCase()
.toString() String.valueOf()
A LINGUAGEM JAVA
StringBuffer
Permitem criar strings que podem ser alteradas Todos os mtodos da classe StringBuffer so synchronized Desempenho pior do que com Strings Principais mtodos:
.append() .insert() .length() .toString()
A LINGUAGEM JAVA
O Mtodo main
class HelloWorld { public static void main( String[] args ) { System.out.println( Hello World! ); } }
Quando o interpretador Java executa uma aplicao, ele comea chamando o mtodo main O mtodo main ento chama todos os outros mtodos necessrios para executar a aplicao
A LINGUAGEM JAVA
Controlando o acesso aos membros da classe Especificador classe subclasse pacote todos ---------------------------------------------------------------private X protected X X X
public package
X X
X X
A LINGUAGEM JAVA
Mtodos e variveis estticos
Declarados com o especificador static So comuns a todos os objetos da classe Utilizados para declarao de constantes Utilizados para declarao de mtodos que no necessitam de uma instncia da classe
static int FALSO 0; static int VERDADEIRO 1; public static boolean testa( int p ) { if( p == this.VERDADEIRO ) return( true ); else return( false ); }
Construtor
Finalizao
Antes de um objeto ser destrudo, o Garbage Collector executa o mtodo finalize do objeto (quanto existir) Isto permite, por exemplo, o fechamento de arquivos e conexes de rede
Classes Essenciais
CLASSES ESSENCIAIS
Classe System - Recursos do Sistema
No h a necessidade de inicializao (classe final) Todos os mtodos so estticos Algumas plataformas podem gerar erros por no possurem os dispositivos acessados
class UserNameTest { public static void main(String[] args) { String name; name = System.getProperty("user.name"); System.out.println(name); } }
CLASSES ESSENCIAIS
Excees
A linguagem Java utiliza as excees para fornecer capacidades de controle de erros quando, durante a execuo de um programa, ocorrer um evento que interrompa o fluxo normal de instrues Vantagens:
Separar o gerenciamento de erro do resto do cdigo Propagar erros Agrupar os erros
CLASSES ESSENCIAIS
Excees
try { // abre o arquivo // determina o seu tamanho // aloca a memria necessria // l o arquivo para a memria // fecha o arquivo (fileOpenFailed) { fazAlgo; (sizeDeterminationFailed) { fazAlgo; (memoryAllocationFailed) { fazAlgo; (readFailed) { fazAlgo; (fileCloseFailed) { fazAlgo;
CLASSES ESSENCIAIS
Threads
Uma thread - tambm chamada de linha de execuo um fluxo sequencial simples de controle dentro de um programa. Quando uma thread criada, ela executa o mtodo run do objeto.
CLASSES ESSENCIAIS
Lendo e escrevendo
Normalmente, os programas devem ler ou escrever informaes em fontes/destinos externos (arquivos, memria, rede, ...). Estas informaes podem ser de qualquer tipo: nmeros, textos, imagens, ... A API Java permite que o programa crie um fluxo para cada um destes pontos externos.
CLASSES ESSENCIAIS
Lendo e escrevendo
CLASSES ESSENCIAIS
Lendo e escrevendo
Os fluxos podem ser de bytes ou caracteres. As fontes e destinos podem ser fsicas ou apenas de processamento. Mtodos: .read() e .write() Quando necessrios, deve-se utilizar a serializao de objetos.
Applets
APPLETS
O que so Applets?
Applets so aplicaes Java que permitem estender as funcionalidades da pginas da Internet. As applets so executas juntamente com um browser ou pelo appletviewer (programa do JDK para rodar applets). As applets so chamdas por um documento HTML.
APPLETS
Caractersticas
As applets no possuem o mtodo main. Uma applet no tem acesso aos recursos da mquina local. Uma applet somente pode utilizar recursos do servidor de onde veio.
APPLETS
Ciclo de vida
.init() Este mtodo chamado para inicializar a applet. .start() Este mtodo inicia a execuo da applet. chamado aps a inicializao e toda vez que o usurio volta pagina (enquanto estiver na memria). .paint() Desenha a applet. .stop() Interrompe a execuo da applet. Inclusive quando o usurio deixa a pgina. .destroy() Libera os recursos alocados pela applet
APPLETS
import java.applet.Applet; import java.awt.Graphics; public class HelloWorld extends Applet {
APPLETS
<HTML> <HEAD> <TITLE> A Simple Program </TITLE> </HEAD> <BODY> Here is the output of my program: <APPLET CODE="HelloWorld.class" WIDTH=150 HEIGHT=25> </APPLET> </BODY> </HTML>
Classes Avanadas
CLASSES AVANADAS
java.awt
Abstract Windowing Toolkit Objetivo de fornecer as funcionalidades bsicas presentes em todas as plataformas grficas Componentes: Label, Button, CheckBox, Choice, List, TextField, MenuItem, Frame, Dialog, Panel, ...
CLASSES AVANADAS
java.net
Permite a criao de programas que comuniquem com recursos ou outros programas em uma rede Permite conexes TCP ou UDP
java.rmi
Remote Method Invocation Permite que um objeto rodando em uma JVM invoque mtodos de um objeto rodando em outra JVM
CLASSES AVANADAS
java.security
Importa a funcionalidade da criptografia, incluindo assinaturas digitais, gerenciamento de chaves e gerenciamento de certificados
java.sql
Permite a conexo aos sistemas de banco de dados tradicionais, inclusive permitindo a execuo de instrues SQL
CLASSES AVANADAS
Outras classes
Java 2D Java 3D Internacionalizao Java Beans Swing Servlets Java Sound Java Media Player Java Native Interface
Referncias
Java Technology Homepage - http://java.sun.com Teach yourself Java 1.1 in 21 Days, L. Lemay & C. Perkins Java Unleashed, Michael Morrison The Java Tutorial, Mary Campione & Kathy Walrath