Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
ANDRÉ J. A. RAMOS, DESENVOLVEDOR andre-rammos@hotmail.com
PROGRAMAÇÃO EM JAVA
 HISTORIA DO JAVA
 A linguagem Java surgiu a partir de
uma pesquisa financiada pela Sun
Microsystems...
PROGRAMAÇÃO EM JAVA
 Em março de 1995 foi anunciado no
evento SunWorld a tecnologia Java
1.0, inicialmente o foco princip...
Atualidades
 Em 2009 a ORACLE
anunciou a aquisição
da Sun Microsystems
no valor de US$ 7,4
bilhões.
ANDRÉ J. A. RAMOS, DE...
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Características-chave
• Simples:
A sintaxe do Java é, de fato, uma versão limpa do C++. Não há necessidade
de arquivos de ...
Processo de escrita compilação
e execução do código
Compilador
(JDK)
CÓDIGO - FONTE BYTECODES
JVM
GUI
Console
ANDRÉ J. A. ...
Portabilidade
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Versão Ano Novos recurso da linguagem Nº de classes e
interfaces
1.0 1996 A própria linguagem 211
1.1 1997 Classes interna...
Nome Sigla Explicação
Java Development Kit JDK Software para programadores que querem escrever
programas em Java.
Java Run...
Depois do JDK ser instalado é necessário configurar algumas coisas.
Instalando o JDK e configurando a variável
de ambiente...
Compilando & executando
em linhas de comando
No diretório onde o arquivo .java estiver, digite:
javac NomeDoArquivo.java
E...
Fazendo um projeto no eclipse
Na barra de menu click em
File > New > Java Project
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Dê um nome ao
projeto e
click em Finish
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Após o projeto ser criado estenda a pasta e clique na pasta
src com o botão direito do mouse.
ANDRÉ J. A. RAMOS, DESENVOLV...
Crie um novo pacote (Package).
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Dê um nome ao
pacote e
clique em Finish
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
No pacote crie uma nova classe
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Dê um nome a sua classe
(com a inicial maiúscula) e
clique em Finish
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Agora basta digitar o código na linguagem Java!!
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Um programa Java simples
• A linha 1 inicia uma declaração de classe nomeada de MinhaClasse;
• A linha 2 abre a classe que...
Comentários
Comentários em uma linha:
// comentário em uma linha
Comentários em mais de uma linha:
/* comentário em
mais d...
Tipos de dados
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Variáveis
Declaração:
<Modificador de acesso> <Tipo> <nome da variável> = <valor inicial>;
Private int idade; //apenas dec...
Palavras Reservadas
As Palavras Reservadas, quer dizer que nenhuma das palavras da lista abaixo
podem ser usadas como iden...
Constantes
Declaração:
<Modificador de acesso> final <Tipo> <nome da variável> = <valor
inicial>;
Private final double PI;...
Operadores
Aritméticos: ++ incremento
+ Somar -- Decremento
- Subtrair Lógicos
* Multiplicar && AND
/ Dividir || OR
% Rest...
Strings
Conceitualmente, Strings são seqüência de caracteres Unicode. Por exemplo
a string “Bem-vindo ao Java” contém 15 c...
Testando igualdade de strings:
Para testar se duas string são iguais, use o método equals(). A expressão
s.equals(t) retor...
Comandos E/S
Imprimindo em console:
O comando System.out.print(); imprimi mensagens no console.
Para impressão temos també...
Usando a classe Scanner
para ler
Para ler dados do usuário digitados no teclado, utilizamos o método next()
da classe Scan...
import
O compilador utiliza as instruções import para localizar classes necessárias
para compilar um programa Java.
Ex.:: ...
Imprimindo e lendo através de
caixas de Diálogo
A classe JOptionPane contém alguns métodos static que são usados para ler ...
Fluxo de controle
Instruções condicionais (if, else, else-if):
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Fluxo de controle
Loops (while,do-while):
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Fluxo de controle
Loops determinantes (for):
Obs.:: O contador também pode ser declarado fora da estrutura.
Contador com v...
Fluxo de controle
seleções múltiplas (switch-case):
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Arrays (vetores e matrizes)
Declaração de vetores:
Tipo[] nomeDoVetor = new Tipo[TamanhoDoVetor];
Ex.::
int[] id = new int...
Arrays (vetores e matrizes)
Declaração de matrizes:
Tipo[][] nomeDaMatriz = new Tipo[nº de linhas] [nº de colunas];
Ex.::
...
Arrays (vetores e matrizes)
Usando for para preencher vetores:
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Introdução a
Programação Orientada a Objetos
Você já sabe que Java é uma linguagem de programação
orientada a objetos. Vam...
Classes em Java
Veiculo
Cor
numPortas
acelerar()
frear()
estacionar()
DIAGRAMA UML
CÓDIGO EM JAVAPara programar orientado ...
Objetos e variáveis-objeto
Construímos um objeto com a palavra new seguida da chamada ao
construtor da classe.
Ex.::
new V...
Métodos
Métodos são os comportamentos de um objeto. A declaração é feita
da seguinte forma:
modificador tipoDeRetorno nome...
Herança
A herança é o mecanismo de derivação através do qual uma classe
pode ser construída como extensão de outra. Neste ...
Herança
Em Java utilizamos a palavra extends para uma
subclasse Herdar os atributos e métodos de uma superclasse.
Ex.::
O ...
Polimorfismo
• Polimorfismo é a característica que garante que um
determinado método possa produzir resultados diferentes
...
Polimorfismo e Interfaces
Interface é um modo de descrever o que as classes devem fazer, sem
especificar como devem fazer....
Encapsulamento
As classes normalmente ocultam os detalhes de sua
implementação dos clientes das classes. Isso se chama
enc...
Encapsulamento
Ex.::
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Janelas e componentes swing
Título – setTitle()
JButton
JFrame
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Alguns componentes swing
ANDRÉ J. A. RAMOS, DESENVOLVEDOR
Bibliografia
• Horstmann, Cay S.; Cornell, Gary. Core Java 2,
volume I – fundamentos. São Paulo: Pearson Prentice
Hall, 20...
Java - Aprenda rápido
Upcoming SlideShare
Loading in …5
×

Java - Aprenda rápido

678 views

Published on

Um breve curso da Linguagem Java para quem deseja aprender a linguagem de forma rápida e direta.

Published in: Technology
  • Login to see the comments

Java - Aprenda rápido

  1. 1. ANDRÉ J. A. RAMOS, DESENVOLVEDOR andre-rammos@hotmail.com
  2. 2. PROGRAMAÇÃO EM JAVA  HISTORIA DO JAVA  A linguagem Java surgiu a partir de uma pesquisa financiada pela Sun Microsystems em 1991, iniciada sob o codinome de projeto Green.  Com o intuito de se tornar uma linguagem para dispositivos inteligentes destinados ao usuário final e com a premissa de ser uma linguagem próxima as linguagens C e C++ e que pudesse ser executado em diversos hardwares. Protótipo Star 7 do Projeto Green  A princípio, o projeto não teve bons resultados devido à lentidão do crescimento da área de dispositivos eletrônicos inteligentes, porém com a grande revolução da World Wide Web em 1993, logo se notou o potencial da linguagem para geração de conteúdo interativo e dinâmico, o que deu nova força ao projeto.  Inicialmente o Java foi chamado de Oak por seu criador (James Gosling) em homenagem a uma árvore que dava para a janela do seu escritório na Sun. Descobriu-se mais tarde que já havia uma linguagem de computador chamada Oak. Quando uma equipe da Sun visitou uma cafeteria local, o nome Java (cidade de origem de um tipo de café importado) foi sugerido e pegou. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  3. 3. PROGRAMAÇÃO EM JAVA  Em março de 1995 foi anunciado no evento SunWorld a tecnologia Java 1.0, inicialmente o foco principal da tecnologia utilizado para divulgação foram os Applets, pequenas aplicações que poderiam ser executadas via web através de um browser.  Em 1998 foi lançado a versão 1.2 (codinome “Playground”) da linguagem Java, está nova versão trouxe uma quantidade muito grande de novas funcionalidades, essa alteração foi tão grande que a pessoa do marketing começou a chamar de Java 2.  As versões 1.3 (codinome “Kestrel”) lançada em 2000 e 1.4 (codinome “Merlin”) lançada em 2002 continuaram sendo chamado de Java 2, pois houveram alterações e melhorias na linguagem mas não tão grandes como na versão 1.2.  Na versão 1.5 lançada em 2004 o pessoal resolveu mudar novamente chamando de Java 5 (codinome “Tiger”), a partir desta versão foi padronizado as novas atualizações.  Em 2006 o Java 6 (codinome “Mustang”) e atualmente o Java está na versão 6 update 26 e a versão 7 tem o codinome “Dolphin”.  Java também é uma linguagem Open Source e não possui um único dono, todas novas atualizações da linguagem são feitas através da JCP (Java Community Process), formada por um conjunto de empresas ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  4. 4. Atualidades  Em 2009 a ORACLE anunciou a aquisição da Sun Microsystems no valor de US$ 7,4 bilhões. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  5. 5. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  6. 6. Características-chave • Simples: A sintaxe do Java é, de fato, uma versão limpa do C++. Não há necessidade de arquivos de cabeçalho, aritmética de ponteiro (ou mesmo uma sintaxe de ponteiros). • Orientado a objetos: Os recursos orientados a objetos do java são comparáveis aos do C++. A principal diferença entre eles está na herança múltipla, que o java substituiu pelo conceito de interface (explicaremos mais a frente). • Portabilidade: Independe de plataforma. • Interpretado: Os bytecodes gerados pelo compilador são convertidos em códigos de máquina pela JVM. • Java e a internet: Os programas Java que funcionam em páginas web são chamados Applets. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  7. 7. Processo de escrita compilação e execução do código Compilador (JDK) CÓDIGO - FONTE BYTECODES JVM GUI Console ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  8. 8. Portabilidade ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  9. 9. Versão Ano Novos recurso da linguagem Nº de classes e interfaces 1.0 1996 A própria linguagem 211 1.1 1997 Classes internas 477 1.2 1998 Nenhum 1.524 1.3 2000 Nenhum 1.840 1.4 2002 Assertivas 2.723 5.0 2004 Classes genéricas, loop “for each”, varargs, autoboxing, metadados, enumerações, importações estáticas. 3.279 6 2006 Nenhum 3.777 Evolução da linguagem Java ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  10. 10. Nome Sigla Explicação Java Development Kit JDK Software para programadores que querem escrever programas em Java. Java Runtime Environment JRE Software para consumidores que querem executar programas Java. Standard Edition SE Plataforma Java para uso em desktop e aplicativos simples de servidor. Enterprise Edition EE Plataforma Java para aplicativos complexos de servidor. Micro Edition ME Plataforma Java para uso em celulares e outros pequenos dispositivos. Java 2 J2 Termo antiquado que descrevia as versões do Java entre 1998 e 2006. Software Development Kit SDK Termo antiquado que descrevia o JDK entre 1998 e 2006. NetBeans ---- Ambiente de desenvolvimento integrado da Sun. Eclipse ---- Ambiente de desenvolvimento integrado mais utilizado.  Jargão Java ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  11. 11. Depois do JDK ser instalado é necessário configurar algumas coisas. Instalando o JDK e configurando a variável de ambiente Path no windows ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  12. 12. Compilando & executando em linhas de comando No diretório onde o arquivo .java estiver, digite: javac NomeDoArquivo.java Esse comando compila, e cria um arquivo .class. Em seguida, digite: Java NomeDoArquivo Esse comando executa o aplicativo. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  13. 13. Fazendo um projeto no eclipse Na barra de menu click em File > New > Java Project ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  14. 14. Dê um nome ao projeto e click em Finish ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  15. 15. Após o projeto ser criado estenda a pasta e clique na pasta src com o botão direito do mouse. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  16. 16. Crie um novo pacote (Package). ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  17. 17. Dê um nome ao pacote e clique em Finish ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  18. 18. No pacote crie uma nova classe ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  19. 19. Dê um nome a sua classe (com a inicial maiúscula) e clique em Finish ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  20. 20. Agora basta digitar o código na linguagem Java!! ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  21. 21. Um programa Java simples • A linha 1 inicia uma declaração de classe nomeada de MinhaClasse; • A linha 2 abre a classe que é fechada na linha 8; • Na linha 3 é declarado o método principal chamado de main (Principal). O programa é iniciado por ele; Este programa apenas exibe a mensagem na Janela de comandos: Bem-vindo ao Java!! ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  22. 22. Comentários Comentários em uma linha: // comentário em uma linha Comentários em mais de uma linha: /* comentário em mais de uma linha */ ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  23. 23. Tipos de dados ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  24. 24. Variáveis Declaração: <Modificador de acesso> <Tipo> <nome da variável> = <valor inicial>; Private int idade; //apenas declarando Private int idadeInicial = 18; //declarando e atribuindo um valor Regras: O nome das variáveis não pode ser o mesmo de palavras reservadas, ter espaços em branco nem começar com números. Recomendações: Por convenção recomenda-se que o nome das variáveis (Atributos) comecem com letra minúscula e, a partir da segunda palavra a primeira letra esteja maiúscula, isto ajuda o programador a diferenciá – la de nome de classes e constantes. Ex: nomeDaVariavel Nota: Modificadores de acesso são palavras que decidem se uma classe, um atributo, uma constante ou um método poderão ser acessados por outras classes. são eles: private, public, protect e abstract. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  25. 25. Palavras Reservadas As Palavras Reservadas, quer dizer que nenhuma das palavras da lista abaixo podem ser usadas como identificadores, pois, todas elas foram reservadas para a Linguagem Java. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  26. 26. Constantes Declaração: <Modificador de acesso> final <Tipo> <nome da variável> = <valor inicial>; Private final double PI; //apenas declarando Private final double PI = 3,14159265; //declarando e atribuindo um valor Regras: O nome das constantes não pode ser o mesmo de palavras reservadas, ter espaços em branco nem começar com números. Recomendações: Por convenção recomenda-se que o nome das constantes esteja com todas as letras maiúsculas, isto ajuda o programador a diferenciá–la de nomes de classes e variáveis. Ex: NOME_DA_CONSTANTE ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  27. 27. Operadores Aritméticos: ++ incremento + Somar -- Decremento - Subtrair Lógicos * Multiplicar && AND / Dividir || OR % Resto da divisão ! NOT Relacionais == IGUAL != DIFERENTE > MAIOR QUE < MENOR QUE <= MENOR OU IGUAL >= MAIOR OU IGUAL ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  28. 28. Strings Conceitualmente, Strings são seqüência de caracteres Unicode. Por exemplo a string “Bem-vindo ao Java” contém 15 caracteres. Declarando strings e atribuindo valores: Private String rot = “Meu nome é: ”; Private String nome = “Fulano ”; Concatenando Strings: O Java, como a maioria das linguagens de programação, permite utilizar + para agrupar (concatenar) strings. Private String declaracao = rot + nome; Se imprimir-mos a variável declaracao o programa irá exibir: Meu nome é: Fulano ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  29. 29. Testando igualdade de strings: Para testar se duas string são iguais, use o método equals(). A expressão s.equals(t) retorna true se s e t forem iguais e false caso contrário. Ex.:: String pai = “João”; String filho = “José”; if ( pai.equals(filho)) //maneira correta de comparar strings System.out.println(“é igual”); Para ignorar maiusculas e minúsculas utilize o método equalsIgnoreCase(). Ex.:: if (pai.equalsIgnoreCase(filho)); System.out.println(“é igual”); Não utilize o operador == para testar igualdade de duas strings! Ele determina se as strings são armazenadas na mesma localização, pois pode acontecer que esteja. Ex.:: if ( pai == filho) //maneira INCORRETA de comparar strings System.out.println(“é igual”); Strings ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  30. 30. Comandos E/S Imprimindo em console: O comando System.out.print(); imprimi mensagens no console. Para impressão temos também: println( ) – imprime e põem o cursor na próxima linha (usamos o operador + para concatenar strings e /ou variáveis); printf( ) – impressão formatada (usamos tags marcadoras de posição de variáveis). Veja algumas tags e sua utilização: Tag Utilização Exemplo Resultado %d Marca posição de números inteiros. int x = 2; Printf(“o dobro de 2 = %d ”, x * 2); o dobro de 2 = 4 %f Marca posição de números reais. float y = 5; Printf(“a metade de 5 = %d ”, y / 2); a metade de 5 = 2,5 %s Marca posição de Strings String nome = “Fulano”; Printf(“Meu nome é: %s ”, nome); Meu nome é: Fulano %c Marca posição de caracter char car = ‘A’; Printf(“O nome começa com a letra %c”, car); O nome começa com a letra A %b Marca posição de boolean boolean logic = true; Printf(“%b ”, logic); true ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  31. 31. Usando a classe Scanner para ler Para ler dados do usuário digitados no teclado, utilizamos o método next() da classe Scanner. Para fazer isto, antes precisamos criar um objeto Scanner: Scanner leitura = new Scanner(System.in); O método next() retorna o que foi digitado, por isso devemos logo atribui-lo a uma variável, assim: String nome = leitura.next(); Utilizamos métodos diferentes de acordo com o tipo de dado a ser lido next( ) – ler apenas uma palavra; nextLine( ) – ler uma linha inteira; nextInt( ) – ler um número inteiro; nextFloat( ) – ler um número real; ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  32. 32. import O compilador utiliza as instruções import para localizar classes necessárias para compilar um programa Java. Ex.:: import java.util.Scanner; Para cada nova classe da Java API que usamos, devemos indicamos o pacote no qual você pode encontrar aquela classe. Esta informação sobre os pacotes é importante. Java importa automaticamente classes do pacote java.lang, como a classe System. Portanto, não são necessárias instruções import para as classes que estão no pacote java.lang. Obs.:: Todas as instruções import devem aparecer antes da definição de classe. Colocar uma instrução import dentro do corpo de definição de uma classe ou depois de uma definição de classe é um erro de sintaxe. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  33. 33. Imprimindo e lendo através de caixas de Diálogo A classe JOptionPane contém alguns métodos static que são usados para ler dados e exibir mensagens por meio de caixas de diálogo. Conheça alguns: JOptionPane.showMessageDialog(null,”Hello world!!”); - exibe mensagem para o usuário; JOptionPane.showInputDialog(”Qual o seu nome?”); - exibe mensagem para o usuário e ao mesmo tempo retorna a string digitada por ele em um campo de texto, por isso deve ser atribuído a uma variável do tipo String; String nome = JOptionPane.showInputDialog(”Qual o seu nome?”); ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  34. 34. Fluxo de controle Instruções condicionais (if, else, else-if): ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  35. 35. Fluxo de controle Loops (while,do-while): ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  36. 36. Fluxo de controle Loops determinantes (for): Obs.:: O contador também pode ser declarado fora da estrutura. Contador com valor inicial incrementoCondição do laço ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  37. 37. Fluxo de controle seleções múltiplas (switch-case): ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  38. 38. Arrays (vetores e matrizes) Declaração de vetores: Tipo[] nomeDoVetor = new Tipo[TamanhoDoVetor]; Ex.:: int[] id = new int[15]; String[] nomes = new String[4]; Inicialização de vetores : String[] nomes = {“fulano”, “josé”, “joão”, “maria”,}; ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  39. 39. Arrays (vetores e matrizes) Declaração de matrizes: Tipo[][] nomeDaMatriz = new Tipo[nº de linhas] [nº de colunas]; Ex.:: int[][] id = new int[3][2]; String[][] nomes = new String[3][2]; Inicialização de matrizes : String[][] nomes = { {“fulano”, “josé”}, { “joão”, “maria”,}, { “james”, “Bond”} }; ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  40. 40. Arrays (vetores e matrizes) Usando for para preencher vetores: ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  41. 41. Introdução a Programação Orientada a Objetos Você já sabe que Java é uma linguagem de programação orientada a objetos. Vamos entender o que isto significa. Classe: Uma classe pode ser definida como um modelo que descreve um conjunto de elementos que compartilham os mesmos atributos, operações e relacionamentos. – Ex.:: Veículo pode ser considerado uma classe, pois possui um conjunto de elementos que compartilham os mesmos atributos (cor, portas, pneus, volante, para- brisas, etc) e ações (acelerar, frear, estacionar, etc). Objeto: É um elemento representante de uma classe, é uma instância da classe. Ex.:: Um carro é um objeto pertencente a classe Veículo. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  42. 42. Classes em Java Veiculo Cor numPortas acelerar() frear() estacionar() DIAGRAMA UML CÓDIGO EM JAVAPara programar orientado a objetos você precisa abstrair os atributos e comportamentos dos objetos do mundo real, em seguida escrever o código utilizando os recursos da linguagem Java. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  43. 43. Objetos e variáveis-objeto Construímos um objeto com a palavra new seguida da chamada ao construtor da classe. Ex.:: new Veiculo(); Podemos criar uma variável para armazenar esse objeto (por isso são chamadas de variável-objeto). Essa variável precisa ser do tipo da classe a que se refere. Ex.:: Veiculo carro = new Veiculo(); Agora podemos usar essa variável-objeto. Para chamar um método de um objeto é necessário enviar uma mensagem para ele. Ex.:: carro.acelerar(); ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  44. 44. Métodos Métodos são os comportamentos de um objeto. A declaração é feita da seguinte forma: modificador tipoDeRetorno nomeDoMetodo(Parâmetros) { instruções; } Ex.:: Uma vez desenvolvido esse método dentro de uma classe, para imprimir o dobro de um número basta escrevermos: O resultado será: ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  45. 45. Herança A herança é o mecanismo de derivação através do qual uma classe pode ser construída como extensão de outra. Neste processo, todos os atributos e operações da classe base (superclasse) passam a valer, também, para a classe derivada (subclasse), podendo esta última definir novos atributos e operações que atendam suas especificidades. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  46. 46. Herança Em Java utilizamos a palavra extends para uma subclasse Herdar os atributos e métodos de uma superclasse. Ex.:: O conceito de herança evita que um mesmo código seja digitado várias vezes para classes que tenham os mesmos atributos e possuam o mesmo comportamento. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  47. 47. Polimorfismo • Polimorfismo é a característica que garante que um determinado método possa produzir resultados diferentes quando aplicado a objetos pertencentes a classes diferentes, dentro de uma hierarquia de classes. • Através do polimorfismo um mesmo nome de operação pode ser compartilhado ao longo de uma hierarquia de classes, com implementações distintas para cada uma das classes. • Ex.:: Empregado calcularSalario() Mensalista calcularSalario() Tarefeiro calcularSalario() Horista calcularSalario() ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  48. 48. Polimorfismo e Interfaces Interface é um modo de descrever o que as classes devem fazer, sem especificar como devem fazer. Na linguagem de programação Java, uma interface não é uma classe, mas um conjunto de requisitos para classes que precisam adequar-se a ela. Observe que o método da interface acima não está desenvolvido, pois isso somente é feito na classe que a implementa. (implements) ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  49. 49. Encapsulamento As classes normalmente ocultam os detalhes de sua implementação dos clientes das classes. Isso se chama encapsulamento ou ocultamento de informações. Observação de engenharia de software.:: Os projetistas de classe utilizam dados private métodos public para garantir a noção do ocultamento de informações e o princípio do menor privilégio. Se o cliente de uma classe precisa acessar dados na classe, forneça acesso por métodos public da classe. Fazendo isso, o programador da classe controla como os dados da classe são manipulados (por exemplo, a verificação da validade dos dados pode impedir que os dados inválidos sejam armazenados em um objeto). Este é o princípio do encapsulamento de dados. ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  50. 50. Encapsulamento Ex.:: ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  51. 51. Janelas e componentes swing Título – setTitle() JButton JFrame ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  52. 52. Alguns componentes swing ANDRÉ J. A. RAMOS, DESENVOLVEDOR
  53. 53. Bibliografia • Horstmann, Cay S.; Cornell, Gary. Core Java 2, volume I – fundamentos. São Paulo: Pearson Prentice Hall, 2010. • DEITEL, Harvey M.; DEITEL, Paul J. Java como Programar. 8º ed. São Paulo: Pearson Prentice Hall, 2010.

×