SlideShare uma empresa Scribd logo
Programação Orientada a Objetos



    Fundamentos da Linguagem
   Java e da Orientação a Objetos



          Ludimila Monjardim Casagrande
                      2012
Tópicos da Aula

     Fundamentos da linguagem Java:
           Arquivos
           Comentários
           Convenções de codificação
           Palavras-chave
           Identificadores
           Tipos primitivos
           Sintaxe para a declaração de:
                 Classes, atributos, métodos e construtores.

Fundamentos do Java             ©2012 Ludimila Monjardim Casagrande   2
Arquivos em Java

     Todo arquivo fonte em Java termina com a extensão
        .java.
     Os arquivos compilados do Java possuem a
        extensão .class.
     Um arquivo fonte em Java deve conter no máximo
        uma classe pública, ou seja, o arquivo pode conter 0
        ou 1 classe pública.
     Caso exista uma classe pública, então, o nome do
        arquivo deve ser igual ao nome da classe pública.


Fundamentos do Java        ©2012 Ludimila Monjardim Casagrande   3
Comentários em Java

     Java suporta três estilos de comentários:
           Para comentar uma linha:
                 usa-se os caracteres //
           Para comentar várias linhas:
                 usa-se os caracteres /* e */
           Para comentar linhas que fazem parte da
            documentação da classe:
                 usa-se os caracteres /** e */


Fundamentos do Java           ©2012 Ludimila Monjardim Casagrande   4
Primeiro Aplicativo Java
    1. /* essa é uma forma de comentar
          múltiplas linhas */
    2. // esse é um comentário de uma única linha
    3. public class PrimeiraClasse {
    4.      // o método main inicia a execução da aplicação Java
    5.     public static void main (String[] args) {
    6.          System.out.println(“Minha primeira classe.”);
    7.      } // fim do método main
    8. } // fim da classe

Fundamentos do Java           ©2012 Ludimila Monjardim Casagrande   5
Convenções do Java

     Para aumentar a legibilidade dos códigos
        desenvolvidos em Java, algumas convenções
        são adotadas.
     As convenções de código providas pela Sun e
        amplamente seguidas podem ser encontradas
        em:
           http://www.oracle.com/technetwork/java/codeconv-
            138413.html ou
           http://www.oracle.com/technetwork/java/codeconvtoc-
            136057.html


Fundamentos do Java        ©2012 Ludimila Monjardim Casagrande    6
Convenções para Nomes

     Classes e Interfaces:
           nomes de classes devem ser escritos com a
            primeira letra maiúscula e as demais minúsculas –
            a primeira letra de palavras subsequentes
            também deve ser maiúscula.
           Exemplos:
                 Cliente
                 ClienteEspecial



Fundamentos do Java          ©2012 Ludimila Monjardim Casagrande   7
Convenções para Nomes

     Variáveis e Métodos:
           nomes de variáveis e métodos devem ser escritos
            com letras minúsculas – sendo a primeira letra de
            palavras subsequentes maiúscula.
           Exemplos de nomes de métodos:
                 adicionarCliente
                 remover




Fundamentos do Java          ©2012 Ludimila Monjardim Casagrande   8
Palavras-chave do Java

       Palavras-chave e palavras reservadas do Java:




       As palavras-chave goto e const são reservadas, embora não tenham
        significado em Java. Portanto, programas não podem usá-las como
                                  identificadores.
Fundamentos do Java        ©2012 Ludimila Monjardim Casagrande            9
Identificadores

     Um identificador é um nome usado para
        identificar uma variável, um método, uma classe
        ou uma constante.
     Palavras-chave ou reservadas não podem ser
        usadas como identificadores.
     Um identificador pode começar com uma letra,
        com o caracter $ ou com um underscore _,
        seguidos por letras, underscores, caracteres $,
        ou dígitos.

Fundamentos do Java    ©2012 Ludimila Monjardim Casagrande   10
Identificadores

     Exemplos de identificadores válidos:
           $nome
           nome
           primeiroNome
           nome1
           _nome
     Identificadores são case sensitive, portanto,
        Nome ≠ nome.

Fundamentos do Java    ©2012 Ludimila Monjardim Casagrande   11
Tipos Primitivos do Java

     Os tipos primitivos da linguagem Java são:
           boolean
           char
           byte
           short
           int
           long
           float
           double


Fundamentos do Java   ©2012 Ludimila Monjardim Casagrande   12
Tipos Primitivos do Java

     Tipos primitivos da linguagem Java e seus
        respectivos tamanhos em bits:




Fundamentos do Java   ©2012 Ludimila Monjardim Casagrande   13
Tipos Primitivos do Java

     Variáveis do tipo boolean só podem receber os
        valores true e false.
     Os tipos inteiros são: byte, short, int e long.
        Todos com sinal.
     Os tipos ponto-flutuante são: float e double.
     O tipo char é inteiro porém sem sinal. Sendo
        assim, o intervalo de valores do char é de 0 a 216
        -1  0 a 65535.


Fundamentos do Java     ©2012 Ludimila Monjardim Casagrande   14
Intervalos de Valores

      Intervalos de valores dos tipos primitivos inteiros
           do Java:


       *

       *




           * byte: -128 a 127 e short: -32768 a 32767, por exemplo

Fundamentos do Java               ©2012 Ludimila Monjardim Casagrande   15
Intervalos de Valores

     Variáveis do tipo char usam o esquema de
        codificação Unicode, que corresponde a todos os
        caracteres ASCII + caracteres especiais.
     Como char ocupa 2 bytes (16 bits), pode representar
        até 65.536 caracteres (atualmente cerca de 35.000
        são usados). Isso faz com que a linguagem possa
        representar todos os caracteres em todos os idiomas
        escritos no planeta.
     A tabela ASCII estendida utiliza somente 8 bits (≈
        capacidade para representar apenas 256 caracteres).

Fundamentos do Java    ©2012 Ludimila Monjardim Casagrande    16
Estrutura de uma Classe

                                    <modificador> class <nome_da_classe> {

                                        [<declaração_dos_atributos>]

                                        [<declaração_dos_construtores>]

Estrutura básica de uma classe          [<declaração_dos_métodos>]
            em UML
                                    }
                                             Estrutura básica de uma classe em
                                                            Java




Fundamentos do Java          ©2012 Ludimila Monjardim Casagrande                 17
Estrutura de uma Classe - Exemplo
  public class Contador {

       public int contador;                          Atributo e tipo do atributo
       public Contador( ) {
         this.contador = 0;                          Construtor default
       }

       public void incrementa( ) {
         this.contador++;
       }                                                     Métodos

       public void decrementa( ) {
         this.contador--;
       }
  }                   this  referência para o objeto corrente
Fundamentos do Java           ©2012 Ludimila Monjardim Casagrande                  18
Representações de uma Classe

                                   public class Conta {
                                       private double saldo;
                                       public void creditar (double valor) {
                                           saldo = saldo + valor;
    Representação usando UML
                                       }
    Nota:                              public void debitar (double valor) {
    - private                              saldo = saldo - valor;
    + public
    ~ default                          }
    # protected                    }
                                               Representação usando Java


Fundamentos do Java       ©2012 Ludimila Monjardim Casagrande                  19
Declaração de Atributos

     A sintaxe básica para a declaração de um
        atributo é:
                  <modificador> <tipo> <nome_do_atributo>;
           o modificador é opcional

     Exemplos:
           private int ra;
           public String nome;
           Conta c;

Fundamentos do Java           ©2012 Ludimila Monjardim Casagrande   20
Inicialização de Atributos

     No momento de sua declaração os atributos
        também podem ser inicializados.

     Exemplos:
           public int idade = 1;
           private double resultado = 10.0;
           String nome = “Java”;
           protected Conta c = null;



Fundamentos do Java       ©2012 Ludimila Monjardim Casagrande   21
Inicialização de Atributos

      Em Java, caso os atributos não sejam
         explicitamente inicializados na sua declaração,
         eles serão automaticamente inicializados com
         um valor predeterminado de acordo com o seu
         tipo.
      Exemplos de valores iniciais conforme o tipo:
            int  0
            boolean  false
            double  0.0
            referência a um objeto  null
Fundamentos do Java         ©2012 Ludimila Monjardim Casagrande   22
Valores Default

       Valores predefinidos de inicialização de
           variáveis de classe em Java:

         Tipo           Valor Inicial                     Tipo           Valor Inicial
         byte                0                            short               0
         int                 0                            long                0
         float              0.0                           double             0.0
         char            'u0000'                         boolean           false
         referência a
                            null
         objeto


Fundamentos do Java                ©2012 Ludimila Monjardim Casagrande                   23
Declaração de Métodos

      A sintaxe básica para a declaração de um
         método é:
           <modificador><tipo_de_retorno><nome_do_método>
            (<lista_de_argumentos>) {
                 <instruções>
            }
            o modificador, a lista de argumentos e as instruções
             são partes opcionais
            a lista de argumentos é formada por pares, separados
             por vírgula:
             <tipo><nome_do_argumento>

Fundamentos do Java        ©2012 Ludimila Monjardim Casagrande      24
Exemplos de Métodos

  public class Aluno {
       int matricula;
       public int obterMatricula( ) {                        Método sem argumentos,
         return matricula;                                   que retorna um int
       }
       public void alterarMatricula                              Método com argumentos,
                         (int matricula) {                       que não retorna nada
         this.matricula = matricula;
       }
  }
                      this  referência para o objeto corrente
Fundamentos do Java            ©2012 Ludimila Monjardim Casagrande                    25
Construtores

     Objetos são criados por meio da execução de um dos
        seus construtores.
     O nome do construtor deve ser idêntico ao nome da
        classe.
     Os construtores devem ser declarados sem nenhum tipo
        de retorno.
           Exemplo: public Aluno() { }
     É permitido (embora não aconselhável) que um método
        tenha o mesmo nome da classe. Nesse caso, se existir
        um tipo de retorno, trata-se de um método comum e não
        de um construtor.
Fundamentos do Java        ©2012 Ludimila Monjardim Casagrande   26
Construtores

     Construtores podem usar qualquer modificador de
        acesso, incluindo private.
     Os construtores são comumente utilizados para definir
        valores para os atributos da classe.
     Métodos construtores definidos para uma certa classe
        podem ou não possuir argumentos.
     O construtor sem argumentos ou construtor vazio é
        considerado o construtor default.
     Se nenhum construtor for implementado na classe, o
        compilador gerará automaticamente o construtor padrão
        (default), que não possui argumentos.
Fundamentos do Java       ©2012 Ludimila Monjardim Casagrande   27
Construtores

     Se qualquer outro construtor (com argumentos) existir na
      classe e você quiser usar um construtor sem
      argumentos, você deverá criá-lo manualmente.
     Sendo assim, em Java, o construtor default é criado
      automaticamente pelo compilador se e somente se não
      existir nenhum outro construtor definido para a classe.
     Isso significa que o construtor default pode ser omitido na
      declaração de uma classe caso ela não possua um
      construtor com argumentos.
     Se a classe possuir um construtor com argumentos, é
        fortemente recomendado que o construtor default seja
        declarado explicitamente.

Fundamentos do Java      ©2012 Ludimila Monjardim Casagrande        28
Declaração de Construtores

      A sintaxe básica para a declaração de um
         construtor é:
           <modificador><nome_da_classe>(<lista_de_argumentos>){
                 <instruções>
            }
            o modificador, a lista de argumentos e as instruções
             são partes opcionais
            a lista de argumentos é formada por pares
             <tipo><nome_do_argumento>
            um construtor não possui tipo de retorno

Fundamentos do Java        ©2012 Ludimila Monjardim Casagrande      29
Exemplos de Construtores
   public class Conta {
        private double saldo;
        public Conta ( ) {                               Construtor default
        }
        public Conta (double saldo) {                          Construtor com
           this.saldo = saldo;
                                                               um argumento
        }
        public void creditar (double valor) {
           saldo = saldo + valor;
        }
        public void debitar (double valor) {
           saldo = saldo - valor;
        }                                                Os construtores normalmente
        public double obterSaldo ( ) {                   inicializam os atributos da
           return saldo;                                 classe.
        }
   }
Fundamentos do Java             ©2012 Ludimila Monjardim Casagrande                    30
A Referência this

     A palavra-chave this é uma referência para o
        objeto corrente.

     this pode ser usado para:
           referenciar um atributo ou método de uma classe
            dentro de um construtor ou de método da mesma;
           passar o objeto corrente como um parâmetro para
            outro método ou construtor.




Fundamentos do Java     ©2012 Ludimila Monjardim Casagrande   31
Criação de um Objeto

     Todo objeto em um programa ou aplicação é
        criado em tempo de execução, utilizado e
        destruído.

     Em Java, a palavra-chave new é usada para
        criar um novo objeto como uma instância de uma
        classe específica, retornando como resultado
        uma referência para o objeto criado.




Fundamentos do Java   ©2012 Ludimila Monjardim Casagrande   32
Criação de um Objeto

      A sintaxe para criação de um objeto é:
             new <nome_da_classe> ([lista_de_argumentos])

      Observe que a palavra-chave new é sucedida
         pela chamada de um construtor da classe.
      O corpo (ou código) do método construtor
         determina as ações associadas à inicialização
         de cada objeto criado.
      Um construtor só é invocado quando um objeto
         é criado.

Fundamentos do Java      ©2012 Ludimila Monjardim Casagrande   33
Exemplo de Criação de um Objeto
     public class Principal {
         public static void main (String[] args) {
             Conta c1 = new Conta( );                               Chamada do construtor
                                                                    default
             c1.creditar(10.0);
             System.out.println(c1.obterSaldo());
             Conta c2 = new Conta(50.0);                        Chamada do construtor
                                                                com um argumento
             c2.creditar(10.0);
             System.out.println(c2.obterSaldo());
         }                                                      c1 e c2 são objetos
                                                                distintos e independentes
     }
Fundamentos do Java           ©2012 Ludimila Monjardim Casagrande                           34
Acesso aos Membros de uma Classe

     Os atributos e métodos também são chamados
        de membros de uma classe.
     Em Java, a seguinte sintaxe é utilizada para se
        ter acesso aos membros da classe:
          <objeto>.<membro>              ou       <classe>.<membro>
     Exemplos:
           c1.creditar(10.0);
           aluno1.matricula;
           System.out;

Fundamentos do Java       ©2012 Ludimila Monjardim Casagrande         35
Leituras Recomendadas

     FJ-11: Java e Orientação a Objetos.
        Caelum Ensino e Soluções em Java.
        http://www.caelum.com.br/curso/fj-11-java-orientacao-objetos/

     Complete Java 2 Certification - Study Guide.
        Sybex.

     Java: Como Programar.
        Autores: H. M. Deitel e P. J. Deitel.
        Editora: Pearson – 6ª Edição.


Fundamentos do Java          ©2012 Ludimila Monjardim Casagrande        36

Mais conteúdo relacionado

Mais procurados

Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)
Gercélia Ramos
 
Java vetores e matrizes
Java   vetores e matrizesJava   vetores e matrizes
Java vetores e matrizes
Armando Daniel
 
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
Leinylson Fontinele
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
Cleyton Ferrari
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e Tk
Carlos Campani
 
POO - 06 - Encapsulamento
POO - 06 - EncapsulamentoPOO - 06 - Encapsulamento
POO - 06 - Encapsulamento
Ludimila Monjardim Casagrande
 
Encapsulamento em Orientação a Objetos
Encapsulamento em Orientação a ObjetosEncapsulamento em Orientação a Objetos
Encapsulamento em Orientação a Objetos
Daniel Brandão
 
Estrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoEstrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - Apresentação
Leinylson Fontinele
 
Programação Orientada a objetos em Java
Programação Orientada a objetos em JavaProgramação Orientada a objetos em Java
Programação Orientada a objetos em Java
Denis L Presciliano
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
Daniel Arndt Alves
 
POO - 03 - Alocação de Memória em Java
POO - 03 - Alocação de Memória em JavaPOO - 03 - Alocação de Memória em Java
POO - 03 - Alocação de Memória em Java
Ludimila Monjardim Casagrande
 
A linguagem de programação c
A linguagem de programação cA linguagem de programação c
A linguagem de programação c
Clausia Antoneli
 
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
SmartnSkilled
 
Java básico - Módulo 04: Estruturas de controle
Java   básico - Módulo 04:  Estruturas de controleJava   básico - Módulo 04:  Estruturas de controle
Java básico - Módulo 04: Estruturas de controle
Professor Samuel Ribeiro
 
Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)
Adriano Teixeira de Souza
 
Aula 10 - Equivalência Java x Portugol Studio - parte 2
Aula 10 - Equivalência Java x Portugol Studio - parte 2Aula 10 - Equivalência Java x Portugol Studio - parte 2
Aula 10 - Equivalência Java x Portugol Studio - parte 2
Pacc UAB
 
Nouveautés Java 9-10-11
Nouveautés Java 9-10-11Nouveautés Java 9-10-11
Nouveautés Java 9-10-11
Mahamadou TOURE, Ph.D.
 
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com JavaExercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
Loiane Groner
 
Chapitre1: Langage Python
Chapitre1: Langage PythonChapitre1: Langage Python
Chapitre1: Langage Python
Aziz Darouichi
 
Chap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec pythonChap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec python
Mohammed TAMALI
 

Mais procurados (20)

Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)
 
Java vetores e matrizes
Java   vetores e matrizesJava   vetores e matrizes
Java vetores e matrizes
 
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
Banco de Dados I - Aula 10 - Banco de Dados Relacional (Modelo Físico)
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e Tk
 
POO - 06 - Encapsulamento
POO - 06 - EncapsulamentoPOO - 06 - Encapsulamento
POO - 06 - Encapsulamento
 
Encapsulamento em Orientação a Objetos
Encapsulamento em Orientação a ObjetosEncapsulamento em Orientação a Objetos
Encapsulamento em Orientação a Objetos
 
Estrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - ApresentaçãoEstrutura de Dados - Aula 01 - Apresentação
Estrutura de Dados - Aula 01 - Apresentação
 
Programação Orientada a objetos em Java
Programação Orientada a objetos em JavaProgramação Orientada a objetos em Java
Programação Orientada a objetos em Java
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
POO - 03 - Alocação de Memória em Java
POO - 03 - Alocação de Memória em JavaPOO - 03 - Alocação de Memória em Java
POO - 03 - Alocação de Memória em Java
 
A linguagem de programação c
A linguagem de programação cA linguagem de programação c
A linguagem de programação c
 
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
Support formation vidéo : OCA Java SE 8 Programmer (1Z0-808) (1)
 
Java básico - Módulo 04: Estruturas de controle
Java   básico - Módulo 04:  Estruturas de controleJava   básico - Módulo 04:  Estruturas de controle
Java básico - Módulo 04: Estruturas de controle
 
Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)Estrutura de Dados em Java (Funções e Procedimentos)
Estrutura de Dados em Java (Funções e Procedimentos)
 
Aula 10 - Equivalência Java x Portugol Studio - parte 2
Aula 10 - Equivalência Java x Portugol Studio - parte 2Aula 10 - Equivalência Java x Portugol Studio - parte 2
Aula 10 - Equivalência Java x Portugol Studio - parte 2
 
Nouveautés Java 9-10-11
Nouveautés Java 9-10-11Nouveautés Java 9-10-11
Nouveautés Java 9-10-11
 
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com JavaExercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
Exercicios Vetores (Arrays) - Estruturas de dados e algoritmos com Java
 
Chapitre1: Langage Python
Chapitre1: Langage PythonChapitre1: Langage Python
Chapitre1: Langage Python
 
Chap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec pythonChap XIII : calcul scientifique avec python
Chap XIII : calcul scientifique avec python
 

Destaque

POO - 24 - Classes Básicas do Java - Datas
POO - 24 - Classes Básicas do Java - DatasPOO - 24 - Classes Básicas do Java - Datas
POO - 24 - Classes Básicas do Java - Datas
Ludimila Monjardim Casagrande
 
POO - Aula 04 - Introdução a classes e objetos
POO - Aula 04 - Introdução a classes e objetosPOO - Aula 04 - Introdução a classes e objetos
POO - Aula 04 - Introdução a classes e objetos
Felipe J. R. Vieira
 
POO - Aula 07 - Construtores e Atributos de Classe
POO - Aula 07 - Construtores e Atributos de ClassePOO - Aula 07 - Construtores e Atributos de Classe
POO - Aula 07 - Construtores e Atributos de Classe
Felipe J. R. Vieira
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
Álvaro Farias Pinheiro
 
POO - Aula 05 - Referências e Vetores
POO - Aula 05 - Referências e VetoresPOO - Aula 05 - Referências e Vetores
POO - Aula 05 - Referências e Vetores
Felipe J. R. Vieira
 
POO - 15 - Passagem de Argumentos
POO - 15 - Passagem de ArgumentosPOO - 15 - Passagem de Argumentos
POO - 15 - Passagem de Argumentos
Ludimila Monjardim Casagrande
 
Lista2
Lista2Lista2
Declarações e Controle de Acesso
Declarações e Controle de AcessoDeclarações e Controle de Acesso
Declarações e Controle de Acesso
Elenilson Vieira
 
Programacao em java
Programacao em javaProgramacao em java
Programacao em java
Portal_do_Estudante_Java
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
Ludimila Monjardim Casagrande
 
3 orientacao-objetos
3 orientacao-objetos3 orientacao-objetos
3 orientacao-objetos
Thiago Oliveira
 
Exercicio classes
Exercicio classesExercicio classes
Exercicio classes
feiosanelma
 
Lod law of demeter
Lod law of demeterLod law of demeter
Lod law of demeter
Engenharia de Software Ágil
 
Exercícios de programação orientado a objeto
Exercícios de programação orientado a objetoExercícios de programação orientado a objeto
Exercícios de programação orientado a objeto
Gleyciana Garrido
 
Padrões de design orientado a objetos
Padrões de design orientado a objetosPadrões de design orientado a objetos
Padrões de design orientado a objetos
Glauco Vinicius Argentino de Oliveira
 
Orientação a Objetos (2)
Orientação a Objetos (2)Orientação a Objetos (2)
Orientação a Objetos (2)
Fábio Nogueira de Lucena
 
Tutorial javac
Tutorial javacTutorial javac
Tutorial javac
Marcio Ballem De Souza
 
Exercicios professor marcos monteiro (1)
Exercicios professor marcos monteiro (1)Exercicios professor marcos monteiro (1)
Exercicios professor marcos monteiro (1)
jose-junior89
 
Exercicios Analise e Desenvolvimento de projetos
Exercicios Analise e Desenvolvimento de projetosExercicios Analise e Desenvolvimento de projetos
Exercicios Analise e Desenvolvimento de projetos
Roberto Ferreira
 
Estrutura de Dados - Procedimentos e Funções
Estrutura de Dados - Procedimentos e FunçõesEstrutura de Dados - Procedimentos e Funções
Estrutura de Dados - Procedimentos e Funções
Adriano Teixeira de Souza
 

Destaque (20)

POO - 24 - Classes Básicas do Java - Datas
POO - 24 - Classes Básicas do Java - DatasPOO - 24 - Classes Básicas do Java - Datas
POO - 24 - Classes Básicas do Java - Datas
 
POO - Aula 04 - Introdução a classes e objetos
POO - Aula 04 - Introdução a classes e objetosPOO - Aula 04 - Introdução a classes e objetos
POO - Aula 04 - Introdução a classes e objetos
 
POO - Aula 07 - Construtores e Atributos de Classe
POO - Aula 07 - Construtores e Atributos de ClassePOO - Aula 07 - Construtores e Atributos de Classe
POO - Aula 07 - Construtores e Atributos de Classe
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
 
POO - Aula 05 - Referências e Vetores
POO - Aula 05 - Referências e VetoresPOO - Aula 05 - Referências e Vetores
POO - Aula 05 - Referências e Vetores
 
POO - 15 - Passagem de Argumentos
POO - 15 - Passagem de ArgumentosPOO - 15 - Passagem de Argumentos
POO - 15 - Passagem de Argumentos
 
Lista2
Lista2Lista2
Lista2
 
Declarações e Controle de Acesso
Declarações e Controle de AcessoDeclarações e Controle de Acesso
Declarações e Controle de Acesso
 
Programacao em java
Programacao em javaProgramacao em java
Programacao em java
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
 
3 orientacao-objetos
3 orientacao-objetos3 orientacao-objetos
3 orientacao-objetos
 
Exercicio classes
Exercicio classesExercicio classes
Exercicio classes
 
Lod law of demeter
Lod law of demeterLod law of demeter
Lod law of demeter
 
Exercícios de programação orientado a objeto
Exercícios de programação orientado a objetoExercícios de programação orientado a objeto
Exercícios de programação orientado a objeto
 
Padrões de design orientado a objetos
Padrões de design orientado a objetosPadrões de design orientado a objetos
Padrões de design orientado a objetos
 
Orientação a Objetos (2)
Orientação a Objetos (2)Orientação a Objetos (2)
Orientação a Objetos (2)
 
Tutorial javac
Tutorial javacTutorial javac
Tutorial javac
 
Exercicios professor marcos monteiro (1)
Exercicios professor marcos monteiro (1)Exercicios professor marcos monteiro (1)
Exercicios professor marcos monteiro (1)
 
Exercicios Analise e Desenvolvimento de projetos
Exercicios Analise e Desenvolvimento de projetosExercicios Analise e Desenvolvimento de projetos
Exercicios Analise e Desenvolvimento de projetos
 
Estrutura de Dados - Procedimentos e Funções
Estrutura de Dados - Procedimentos e FunçõesEstrutura de Dados - Procedimentos e Funções
Estrutura de Dados - Procedimentos e Funções
 

Semelhante a POO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos

POO - 20 - Wrapper Classes
POO - 20 - Wrapper ClassesPOO - 20 - Wrapper Classes
POO - 20 - Wrapper Classes
Ludimila Monjardim Casagrande
 
Poo slides01
Poo slides01Poo slides01
Poo slides01
jmtofoli
 
POO - 07 - Operadores do Java
POO - 07 - Operadores do  JavaPOO - 07 - Operadores do  Java
POO - 07 - Operadores do Java
Ludimila Monjardim Casagrande
 
Curso de Java (Parte 2)
 Curso de Java (Parte 2) Curso de Java (Parte 2)
Curso de Java (Parte 2)
Mario Sergio
 
Aula2
Aula2Aula2
Aula2
fkimura
 
Introdução à Programação Orientada a Objetos Usando Java
Introdução à Programação Orientada a Objetos Usando JavaIntrodução à Programação Orientada a Objetos Usando Java
Introdução à Programação Orientada a Objetos Usando Java
Helio Henrique L. C. Monte-Alto
 
Curso Java Básico - Aula02
Curso Java Básico - Aula02Curso Java Básico - Aula02
Curso Java Básico - Aula02
Natanael Fonseca
 
UFCG.JCert Reunião 1 - Declarações e Controle de Acesso
UFCG.JCert Reunião 1 - Declarações e Controle de AcessoUFCG.JCert Reunião 1 - Declarações e Controle de Acesso
UFCG.JCert Reunião 1 - Declarações e Controle de Acesso
Anderson Ledo
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem III
Juliano Weber
 
Curso Java Básico - Aula 01
Curso Java Básico - Aula 01Curso Java Básico - Aula 01
Curso Java Básico - Aula 01
Natanael Fonseca
 
7194099-Manual-de-Java
7194099-Manual-de-Java7194099-Manual-de-Java
7194099-Manual-de-Java
Márcio Antônio Moraes Reyes
 
Introdução JavaScript e DOM 2016
Introdução JavaScript e DOM 2016Introdução JavaScript e DOM 2016
Introdução JavaScript e DOM 2016
Romualdo Andre
 
Programação orientada a objetos – III
Programação orientada a objetos – IIIProgramação orientada a objetos – III
Programação orientada a objetos – III
Gabriel Faustino
 
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Adriano Teixeira de Souza
 
POO - 05 - Ambiente de Desenvolvimento
POO - 05 - Ambiente de DesenvolvimentoPOO - 05 - Ambiente de Desenvolvimento
POO - 05 - Ambiente de Desenvolvimento
Ludimila Monjardim Casagrande
 
Java m01 - Nomenclaturas
Java   m01 - NomenclaturasJava   m01 - Nomenclaturas
Java m01 - Nomenclaturas
Professor Samuel Ribeiro
 
Java básico
Java básicoJava básico
Java básico
Laryssa Muniz
 
Curso Java Basico
Curso Java BasicoCurso Java Basico
Curso Java Basico
Jamildo Feitosa
 
POO - 21 - Java e Banco de Dados
POO - 21 - Java e Banco de DadosPOO - 21 - Java e Banco de Dados
POO - 21 - Java e Banco de Dados
Ludimila Monjardim Casagrande
 
Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01
John Godoi
 

Semelhante a POO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos (20)

POO - 20 - Wrapper Classes
POO - 20 - Wrapper ClassesPOO - 20 - Wrapper Classes
POO - 20 - Wrapper Classes
 
Poo slides01
Poo slides01Poo slides01
Poo slides01
 
POO - 07 - Operadores do Java
POO - 07 - Operadores do  JavaPOO - 07 - Operadores do  Java
POO - 07 - Operadores do Java
 
Curso de Java (Parte 2)
 Curso de Java (Parte 2) Curso de Java (Parte 2)
Curso de Java (Parte 2)
 
Aula2
Aula2Aula2
Aula2
 
Introdução à Programação Orientada a Objetos Usando Java
Introdução à Programação Orientada a Objetos Usando JavaIntrodução à Programação Orientada a Objetos Usando Java
Introdução à Programação Orientada a Objetos Usando Java
 
Curso Java Básico - Aula02
Curso Java Básico - Aula02Curso Java Básico - Aula02
Curso Java Básico - Aula02
 
UFCG.JCert Reunião 1 - Declarações e Controle de Acesso
UFCG.JCert Reunião 1 - Declarações e Controle de AcessoUFCG.JCert Reunião 1 - Declarações e Controle de Acesso
UFCG.JCert Reunião 1 - Declarações e Controle de Acesso
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem III
 
Curso Java Básico - Aula 01
Curso Java Básico - Aula 01Curso Java Básico - Aula 01
Curso Java Básico - Aula 01
 
7194099-Manual-de-Java
7194099-Manual-de-Java7194099-Manual-de-Java
7194099-Manual-de-Java
 
Introdução JavaScript e DOM 2016
Introdução JavaScript e DOM 2016Introdução JavaScript e DOM 2016
Introdução JavaScript e DOM 2016
 
Programação orientada a objetos – III
Programação orientada a objetos – IIIProgramação orientada a objetos – III
Programação orientada a objetos – III
 
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
 
POO - 05 - Ambiente de Desenvolvimento
POO - 05 - Ambiente de DesenvolvimentoPOO - 05 - Ambiente de Desenvolvimento
POO - 05 - Ambiente de Desenvolvimento
 
Java m01 - Nomenclaturas
Java   m01 - NomenclaturasJava   m01 - Nomenclaturas
Java m01 - Nomenclaturas
 
Java básico
Java básicoJava básico
Java básico
 
Curso Java Basico
Curso Java BasicoCurso Java Basico
Curso Java Basico
 
POO - 21 - Java e Banco de Dados
POO - 21 - Java e Banco de DadosPOO - 21 - Java e Banco de Dados
POO - 21 - Java e Banco de Dados
 
Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01Java e orientação a objetos - aula 01
Java e orientação a objetos - aula 01
 

Mais de Ludimila Monjardim Casagrande

Gerenciamento Ágil de Projetos com Scrum
Gerenciamento Ágil de Projetos com ScrumGerenciamento Ágil de Projetos com Scrum
Gerenciamento Ágil de Projetos com Scrum
Ludimila Monjardim Casagrande
 
POO - 23 - Coleções da API do Java
POO -  23 - Coleções da API do Java POO -  23 - Coleções da API do Java
POO - 23 - Coleções da API do Java
Ludimila Monjardim Casagrande
 
POO - 22 - Tratamento de Exceções em Java
POO - 22 - Tratamento de Exceções em JavaPOO - 22 - Tratamento de Exceções em Java
POO - 22 - Tratamento de Exceções em Java
Ludimila Monjardim Casagrande
 
POO - 19 - Elementos Estáticos
POO - 19 - Elementos EstáticosPOO - 19 - Elementos Estáticos
POO - 19 - Elementos Estáticos
Ludimila Monjardim Casagrande
 
POO - 18 - Sobrecarga e Sobreposição de Métodos
POO - 18 - Sobrecarga e Sobreposição de MétodosPOO - 18 - Sobrecarga e Sobreposição de Métodos
POO - 18 - Sobrecarga e Sobreposição de Métodos
Ludimila Monjardim Casagrande
 
POO - 14 - Vetores
POO - 14 - VetoresPOO - 14 - Vetores
POO - 14 - Vetores
Ludimila Monjardim Casagrande
 
POO - 12 - A Classe Object
POO - 12 - A Classe ObjectPOO - 12 - A Classe Object
POO - 12 - A Classe Object
Ludimila Monjardim Casagrande
 
POO - 11 - Prática de Herança
POO - 11 - Prática de HerançaPOO - 11 - Prática de Herança
POO - 11 - Prática de Herança
Ludimila Monjardim Casagrande
 
POO - 10 - Herança
POO - 10 - HerançaPOO - 10 - Herança
POO - 10 - Herança
Ludimila Monjardim Casagrande
 
POO - 09 - Entradas e Saídas em Java
POO - 09 - Entradas e Saídas em JavaPOO - 09 - Entradas e Saídas em Java
POO - 09 - Entradas e Saídas em Java
Ludimila Monjardim Casagrande
 
POO - 08 - Prática de Encapsulamento
POO - 08 - Prática de EncapsulamentoPOO - 08 - Prática de Encapsulamento
POO - 08 - Prática de Encapsulamento
Ludimila Monjardim Casagrande
 

Mais de Ludimila Monjardim Casagrande (11)

Gerenciamento Ágil de Projetos com Scrum
Gerenciamento Ágil de Projetos com ScrumGerenciamento Ágil de Projetos com Scrum
Gerenciamento Ágil de Projetos com Scrum
 
POO - 23 - Coleções da API do Java
POO -  23 - Coleções da API do Java POO -  23 - Coleções da API do Java
POO - 23 - Coleções da API do Java
 
POO - 22 - Tratamento de Exceções em Java
POO - 22 - Tratamento de Exceções em JavaPOO - 22 - Tratamento de Exceções em Java
POO - 22 - Tratamento de Exceções em Java
 
POO - 19 - Elementos Estáticos
POO - 19 - Elementos EstáticosPOO - 19 - Elementos Estáticos
POO - 19 - Elementos Estáticos
 
POO - 18 - Sobrecarga e Sobreposição de Métodos
POO - 18 - Sobrecarga e Sobreposição de MétodosPOO - 18 - Sobrecarga e Sobreposição de Métodos
POO - 18 - Sobrecarga e Sobreposição de Métodos
 
POO - 14 - Vetores
POO - 14 - VetoresPOO - 14 - Vetores
POO - 14 - Vetores
 
POO - 12 - A Classe Object
POO - 12 - A Classe ObjectPOO - 12 - A Classe Object
POO - 12 - A Classe Object
 
POO - 11 - Prática de Herança
POO - 11 - Prática de HerançaPOO - 11 - Prática de Herança
POO - 11 - Prática de Herança
 
POO - 10 - Herança
POO - 10 - HerançaPOO - 10 - Herança
POO - 10 - Herança
 
POO - 09 - Entradas e Saídas em Java
POO - 09 - Entradas e Saídas em JavaPOO - 09 - Entradas e Saídas em Java
POO - 09 - Entradas e Saídas em Java
 
POO - 08 - Prática de Encapsulamento
POO - 08 - Prática de EncapsulamentoPOO - 08 - Prática de Encapsulamento
POO - 08 - Prática de Encapsulamento
 

Último

Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Gabriel de Mattos Faustino
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
Danilo Pinotti
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 
Guardioes Digitais em ação: Como criar senhas seguras!
Guardioes Digitais em ação: Como criar senhas seguras!Guardioes Digitais em ação: Como criar senhas seguras!
Guardioes Digitais em ação: Como criar senhas seguras!
Jonathas Muniz
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
Faga1939
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 

Último (7)

Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 
Guardioes Digitais em ação: Como criar senhas seguras!
Guardioes Digitais em ação: Como criar senhas seguras!Guardioes Digitais em ação: Como criar senhas seguras!
Guardioes Digitais em ação: Como criar senhas seguras!
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 

POO - 02 - Fundamentos da Linguagem Java e da Orientação a Objetos

  • 1. Programação Orientada a Objetos Fundamentos da Linguagem Java e da Orientação a Objetos Ludimila Monjardim Casagrande 2012
  • 2. Tópicos da Aula  Fundamentos da linguagem Java:  Arquivos  Comentários  Convenções de codificação  Palavras-chave  Identificadores  Tipos primitivos  Sintaxe para a declaração de:  Classes, atributos, métodos e construtores. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 2
  • 3. Arquivos em Java  Todo arquivo fonte em Java termina com a extensão .java.  Os arquivos compilados do Java possuem a extensão .class.  Um arquivo fonte em Java deve conter no máximo uma classe pública, ou seja, o arquivo pode conter 0 ou 1 classe pública.  Caso exista uma classe pública, então, o nome do arquivo deve ser igual ao nome da classe pública. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 3
  • 4. Comentários em Java  Java suporta três estilos de comentários:  Para comentar uma linha:  usa-se os caracteres //  Para comentar várias linhas:  usa-se os caracteres /* e */  Para comentar linhas que fazem parte da documentação da classe:  usa-se os caracteres /** e */ Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 4
  • 5. Primeiro Aplicativo Java 1. /* essa é uma forma de comentar múltiplas linhas */ 2. // esse é um comentário de uma única linha 3. public class PrimeiraClasse { 4. // o método main inicia a execução da aplicação Java 5. public static void main (String[] args) { 6. System.out.println(“Minha primeira classe.”); 7. } // fim do método main 8. } // fim da classe Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 5
  • 6. Convenções do Java  Para aumentar a legibilidade dos códigos desenvolvidos em Java, algumas convenções são adotadas.  As convenções de código providas pela Sun e amplamente seguidas podem ser encontradas em:  http://www.oracle.com/technetwork/java/codeconv- 138413.html ou  http://www.oracle.com/technetwork/java/codeconvtoc- 136057.html Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 6
  • 7. Convenções para Nomes  Classes e Interfaces:  nomes de classes devem ser escritos com a primeira letra maiúscula e as demais minúsculas – a primeira letra de palavras subsequentes também deve ser maiúscula.  Exemplos:  Cliente  ClienteEspecial Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 7
  • 8. Convenções para Nomes  Variáveis e Métodos:  nomes de variáveis e métodos devem ser escritos com letras minúsculas – sendo a primeira letra de palavras subsequentes maiúscula.  Exemplos de nomes de métodos:  adicionarCliente  remover Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 8
  • 9. Palavras-chave do Java  Palavras-chave e palavras reservadas do Java: As palavras-chave goto e const são reservadas, embora não tenham significado em Java. Portanto, programas não podem usá-las como identificadores. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 9
  • 10. Identificadores  Um identificador é um nome usado para identificar uma variável, um método, uma classe ou uma constante.  Palavras-chave ou reservadas não podem ser usadas como identificadores.  Um identificador pode começar com uma letra, com o caracter $ ou com um underscore _, seguidos por letras, underscores, caracteres $, ou dígitos. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 10
  • 11. Identificadores  Exemplos de identificadores válidos:  $nome  nome  primeiroNome  nome1  _nome  Identificadores são case sensitive, portanto, Nome ≠ nome. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 11
  • 12. Tipos Primitivos do Java  Os tipos primitivos da linguagem Java são:  boolean  char  byte  short  int  long  float  double Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 12
  • 13. Tipos Primitivos do Java  Tipos primitivos da linguagem Java e seus respectivos tamanhos em bits: Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 13
  • 14. Tipos Primitivos do Java  Variáveis do tipo boolean só podem receber os valores true e false.  Os tipos inteiros são: byte, short, int e long. Todos com sinal.  Os tipos ponto-flutuante são: float e double.  O tipo char é inteiro porém sem sinal. Sendo assim, o intervalo de valores do char é de 0 a 216 -1  0 a 65535. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 14
  • 15. Intervalos de Valores  Intervalos de valores dos tipos primitivos inteiros do Java: * * * byte: -128 a 127 e short: -32768 a 32767, por exemplo Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 15
  • 16. Intervalos de Valores  Variáveis do tipo char usam o esquema de codificação Unicode, que corresponde a todos os caracteres ASCII + caracteres especiais.  Como char ocupa 2 bytes (16 bits), pode representar até 65.536 caracteres (atualmente cerca de 35.000 são usados). Isso faz com que a linguagem possa representar todos os caracteres em todos os idiomas escritos no planeta.  A tabela ASCII estendida utiliza somente 8 bits (≈ capacidade para representar apenas 256 caracteres). Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 16
  • 17. Estrutura de uma Classe <modificador> class <nome_da_classe> { [<declaração_dos_atributos>] [<declaração_dos_construtores>] Estrutura básica de uma classe [<declaração_dos_métodos>] em UML } Estrutura básica de uma classe em Java Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 17
  • 18. Estrutura de uma Classe - Exemplo public class Contador { public int contador; Atributo e tipo do atributo public Contador( ) { this.contador = 0; Construtor default } public void incrementa( ) { this.contador++; } Métodos public void decrementa( ) { this.contador--; } } this  referência para o objeto corrente Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 18
  • 19. Representações de uma Classe public class Conta { private double saldo; public void creditar (double valor) { saldo = saldo + valor; Representação usando UML } Nota: public void debitar (double valor) { - private saldo = saldo - valor; + public ~ default } # protected } Representação usando Java Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 19
  • 20. Declaração de Atributos  A sintaxe básica para a declaração de um atributo é: <modificador> <tipo> <nome_do_atributo>;  o modificador é opcional  Exemplos:  private int ra;  public String nome;  Conta c; Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 20
  • 21. Inicialização de Atributos  No momento de sua declaração os atributos também podem ser inicializados.  Exemplos:  public int idade = 1;  private double resultado = 10.0;  String nome = “Java”;  protected Conta c = null; Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 21
  • 22. Inicialização de Atributos  Em Java, caso os atributos não sejam explicitamente inicializados na sua declaração, eles serão automaticamente inicializados com um valor predeterminado de acordo com o seu tipo.  Exemplos de valores iniciais conforme o tipo:  int  0  boolean  false  double  0.0  referência a um objeto  null Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 22
  • 23. Valores Default  Valores predefinidos de inicialização de variáveis de classe em Java: Tipo Valor Inicial Tipo Valor Inicial byte 0 short 0 int 0 long 0 float 0.0 double 0.0 char 'u0000' boolean false referência a null objeto Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 23
  • 24. Declaração de Métodos  A sintaxe básica para a declaração de um método é: <modificador><tipo_de_retorno><nome_do_método> (<lista_de_argumentos>) { <instruções> }  o modificador, a lista de argumentos e as instruções são partes opcionais  a lista de argumentos é formada por pares, separados por vírgula: <tipo><nome_do_argumento> Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 24
  • 25. Exemplos de Métodos public class Aluno { int matricula; public int obterMatricula( ) { Método sem argumentos, return matricula; que retorna um int } public void alterarMatricula Método com argumentos, (int matricula) { que não retorna nada this.matricula = matricula; } } this  referência para o objeto corrente Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 25
  • 26. Construtores  Objetos são criados por meio da execução de um dos seus construtores.  O nome do construtor deve ser idêntico ao nome da classe.  Os construtores devem ser declarados sem nenhum tipo de retorno.  Exemplo: public Aluno() { }  É permitido (embora não aconselhável) que um método tenha o mesmo nome da classe. Nesse caso, se existir um tipo de retorno, trata-se de um método comum e não de um construtor. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 26
  • 27. Construtores  Construtores podem usar qualquer modificador de acesso, incluindo private.  Os construtores são comumente utilizados para definir valores para os atributos da classe.  Métodos construtores definidos para uma certa classe podem ou não possuir argumentos.  O construtor sem argumentos ou construtor vazio é considerado o construtor default.  Se nenhum construtor for implementado na classe, o compilador gerará automaticamente o construtor padrão (default), que não possui argumentos. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 27
  • 28. Construtores  Se qualquer outro construtor (com argumentos) existir na classe e você quiser usar um construtor sem argumentos, você deverá criá-lo manualmente.  Sendo assim, em Java, o construtor default é criado automaticamente pelo compilador se e somente se não existir nenhum outro construtor definido para a classe.  Isso significa que o construtor default pode ser omitido na declaração de uma classe caso ela não possua um construtor com argumentos.  Se a classe possuir um construtor com argumentos, é fortemente recomendado que o construtor default seja declarado explicitamente. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 28
  • 29. Declaração de Construtores  A sintaxe básica para a declaração de um construtor é: <modificador><nome_da_classe>(<lista_de_argumentos>){ <instruções> }  o modificador, a lista de argumentos e as instruções são partes opcionais  a lista de argumentos é formada por pares <tipo><nome_do_argumento>  um construtor não possui tipo de retorno Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 29
  • 30. Exemplos de Construtores public class Conta { private double saldo; public Conta ( ) { Construtor default } public Conta (double saldo) { Construtor com this.saldo = saldo; um argumento } public void creditar (double valor) { saldo = saldo + valor; } public void debitar (double valor) { saldo = saldo - valor; } Os construtores normalmente public double obterSaldo ( ) { inicializam os atributos da return saldo; classe. } } Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 30
  • 31. A Referência this  A palavra-chave this é uma referência para o objeto corrente.  this pode ser usado para:  referenciar um atributo ou método de uma classe dentro de um construtor ou de método da mesma;  passar o objeto corrente como um parâmetro para outro método ou construtor. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 31
  • 32. Criação de um Objeto  Todo objeto em um programa ou aplicação é criado em tempo de execução, utilizado e destruído.  Em Java, a palavra-chave new é usada para criar um novo objeto como uma instância de uma classe específica, retornando como resultado uma referência para o objeto criado. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 32
  • 33. Criação de um Objeto  A sintaxe para criação de um objeto é: new <nome_da_classe> ([lista_de_argumentos])  Observe que a palavra-chave new é sucedida pela chamada de um construtor da classe.  O corpo (ou código) do método construtor determina as ações associadas à inicialização de cada objeto criado.  Um construtor só é invocado quando um objeto é criado. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 33
  • 34. Exemplo de Criação de um Objeto public class Principal { public static void main (String[] args) { Conta c1 = new Conta( ); Chamada do construtor default c1.creditar(10.0); System.out.println(c1.obterSaldo()); Conta c2 = new Conta(50.0); Chamada do construtor com um argumento c2.creditar(10.0); System.out.println(c2.obterSaldo()); } c1 e c2 são objetos distintos e independentes } Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 34
  • 35. Acesso aos Membros de uma Classe  Os atributos e métodos também são chamados de membros de uma classe.  Em Java, a seguinte sintaxe é utilizada para se ter acesso aos membros da classe: <objeto>.<membro> ou <classe>.<membro>  Exemplos:  c1.creditar(10.0);  aluno1.matricula;  System.out; Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 35
  • 36. Leituras Recomendadas  FJ-11: Java e Orientação a Objetos. Caelum Ensino e Soluções em Java. http://www.caelum.com.br/curso/fj-11-java-orientacao-objetos/  Complete Java 2 Certification - Study Guide. Sybex.  Java: Como Programar. Autores: H. M. Deitel e P. J. Deitel. Editora: Pearson – 6ª Edição. Fundamentos do Java ©2012 Ludimila Monjardim Casagrande 36