SlideShare uma empresa Scribd logo
1 de 46
Programação Orientada a Objetos com Java Aula 4 professor: Fábio Kimura e-mail: fkimura@yahoo.com
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],public class Aninhados1 { public void procurarValor(int valor) { int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; for (int i = 1; i <= array.length; i++ ) { System.out.println(“i=“ + i); if (array[i] == valor) { System.out.println(“achei:“ + i); } } } } Qual a saída para procurarValor(4) ?
[object Object],public class Aninhados2 { public void procurarValor(int valor) { int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; for (int i = 1; i <= array.length; i++ ) { System.out.println(“i=“ + i); if (array[i] == valor) { System.out.println(“achei:“ + i); break; } } } } Qual a saída para procurarValor(4) ? Melhor, pior?
[object Object],public class Aninhados3 { public void procurarValor(int valor) { int[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; for (int i = 1; i <= array.length; i++ ) { if (array[i] != valor) { System.out.println(“i=“+i); } } } } Qual a saída para procurarValor(4) ?
[object Object],public class Aninhados4 { public void procurarValor(int valor) { int[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; for (int i = 1; i <= array.length; i++ ) { if (array[i] == valor) { continue; } System.out.println(“i=“+i); } } } Qual a saída para procurarValor(4) ? Melhor ou pior?
[object Object],if (exam.done()) if (exam.getScore() < 0.61) System.out.println(&quot;Try again.&quot;); else System.out.println(&quot;Java master!&quot;); A que if pertence o último else?
[object Object],if (exam.done()) if (exam.getScore() < 0.61) System.out.println(&quot;Try again.&quot;); else System.out.println(&quot;Java master!&quot;); O correto é assim?
[object Object],if (exam.done()) if (exam.getScore() < 0.61) System.out.println(&quot;Try again.&quot;); else  System.out.println(&quot;Java master!&quot;); Ou assim?
[object Object],if (exam.done()) { if (exam.getScore() < 0.61) { System.out.println(&quot;Try again.&quot;); } else { System.out.println(&quot;Java master!&quot;); } }
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[modificador] tipo identificador = valor_inicial; [modificador] tipo identificador; ,[object Object]
[object Object],[object Object],int idade = 18; float temperatura = 31.2; double salario = 1456.3; char letraA = ‘A’; byte base = 2; long distancia = 2000; short s; String faculdade = new String(“IBTA!”); private int numero; ,[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],public class Conta { // variável de instância private int numero; public int getNumero() { return numero; } public void setNumero(int n) { numero = n; } } ,[object Object]
[object Object],[object Object],[object Object],public class Conta { // variável de classe public static double tarifa = 2.5; } ,[object Object]
[object Object],[object Object],[object Object],public class Conta { // variável de classe public static double tarifa = 2.5; // método  public double calcularTarifa(double valor) { // total e valor -> variaveis locais double total = valor + tarifa; return total ; } } ,[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[modificador]  final  tipo IDENTIFICADOR = valorinicial; [modificador] static  final  tipo IDENTIFICADOR = valorinicial; ,[object Object]
[object Object],public class Conta { // constante de classe public  final   static  double PERCENTUAL_CPMF = 0.038; // método  public double calcularCPMF(double valor) { // valor e cpmf -> variaveis locais double cpmf = valor * PERCENTUAL_CPMF; return cpmf; } } ,[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],Classe java.lang.Math ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],public class Conta { // variável de instância private int numero; public void setNumero(int numero) { numero = numero; // o que acontecerá aqui? } }
[object Object],[object Object],public class Teste { // variável de instância private int numero = 3; public void testar() { int numero = 2; System.out.println(numero); } }
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],public void setLogradouro(String logradouroEnd) { logradouro = logradouroEnd; } public void setLogradouro(String logradouro) { this.logradouro = logradouro; }   O que é mais fácil de entender? ,[object Object]
[object Object],[object Object],public void setLogradouro(String logradouroEnd) { // nomes diferentes para as variáveis logradouro = logradouroEnd; } public void setLogradouro(String logradouro) { //  this.logradouro  refere-se ao atributo de instancia  //  logradouro  se refere a parâmetro de método logradouro. this.logradouro = logradouro; }   Usamos o  this  para distinguir variáveis de instância das variáveis locais. ,[object Object]
[object Object],[object Object],public int getTipo() { // tipo é um atributo de instância,  // num método get não usamos colocar o this. return tipo; }   Convenção de Código Java ,[object Object]
[object Object],[object Object],public void imprimirDados() { this.imprimirAba(); this.imprimirRelatorio(); } public void imprimirAba() { // imprime aba } public void imprimirRelatorio() { // imprime o relatorio }   Usamos o  this  em chamadas de métodos dentro da mesma instância, aumentando o reaproveitamento de código e facilitando a leitura. ,[object Object]
[object Object],[object Object],public class Conta { // variável de instância private int numero; public void setNumero(int numero) { this.numero = numero;  } public int getNumero() { return numero; } }
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[modificadores] tipo_retorno identificador([parametros]) { // bloco de código do método } ,[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],public class Conta { // variável de instância private int numero; // metodo de instancia public int getNumero() { // manipula variavel de instancia return numero; } } ,[object Object]
[object Object],[object Object],[object Object],public class Conta { // variável de classe public static double tarifa = 2.5; // metodo de classe public static void setTarifa(double tarifa) { // refencia da classe Conta Conta.tarifa = tarifa; } } ,[object Object]
[object Object],// worker public void  executar (int valor1, double valor2) { } // accessor public int  getIdade () { return idade; } // mutator public void  setIdade (int idade) { this.idade = idade; } ,[object Object]
[object Object],public class Conta { // variável de classe public static double tarifa = 2.5; // metodo de classe public static void setTarifa(double tarifa) { // refencia da classe Conta Conta.tarifa = tarifa; } } Conta minhaConta = new Conta(); minhaConta.setTarifa(3.0); // evitar!! System.out.println(“tarifa=“ + minhaConta.tarifa); //evitar!!! Conta.setTarifa(3.0); // Mais claro! System.out.println(“tarifa=“ + Conta.tarifa); //Mais claro!
[object Object],Método main() Classe System Classe Math ,[object Object]
[object Object],public int somar(int a, int b) public int somar(int a, int b, int c) public int somar(int a, int b, int c, int d) public int somar(int a, int b, int c, int d, int e) public int somar(int a, short b) public double somar(double a, int b) ,[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],System.out.println(); void println()  void println(boolean x)  void println(char x)  void println(char[] x) void println(double x) void println(float x) void println(int x) void println(long x) void println(Object x) void println(String x) ,[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Mais conteúdo relacionado

Mais procurados

O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetos
Nécio de Lima Veras
 

Mais procurados (20)

Curso Java Básico - Aula02
Curso Java Básico - Aula02Curso Java Básico - Aula02
Curso Java Básico - Aula02
 
Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetos
 
Curso Java Básico - Aula 03
Curso Java Básico - Aula 03Curso Java Básico - Aula 03
Curso Java Básico - Aula 03
 
Programação orientada a objetos – III
Programação orientada a objetos – IIIProgramação orientada a objetos – III
Programação orientada a objetos – III
 
Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java Revisão Sobre Programação Orientada a Objetos com Java
Revisão Sobre Programação Orientada a Objetos com Java
 
Aula 09 - introducao oo
Aula 09 - introducao ooAula 09 - introducao oo
Aula 09 - introducao oo
 
Aula05
Aula05Aula05
Aula05
 
Classes e Objectos JAVA
Classes e Objectos JAVAClasses e Objectos JAVA
Classes e Objectos JAVA
 
Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a Objeto
 
Java Básico :: Classe Vector
Java Básico :: Classe VectorJava Básico :: Classe Vector
Java Básico :: Classe Vector
 
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
 
Java8
Java8Java8
Java8
 
Java: Classes Abstratas, Anônimas, Interface
Java: Classes Abstratas, Anônimas, InterfaceJava: Classes Abstratas, Anônimas, Interface
Java: Classes Abstratas, Anônimas, Interface
 
Java Básico - Módulo 07: Introdução à programação orientada à objetos
Java Básico - Módulo 07: Introdução à programação orientada à objetos Java Básico - Módulo 07: Introdução à programação orientada à objetos
Java Básico - Módulo 07: Introdução à programação orientada à objetos
 
POO - 20 - Wrapper Classes
POO - 20 - Wrapper ClassesPOO - 20 - Wrapper Classes
POO - 20 - Wrapper Classes
 
Java 07
Java 07Java 07
Java 07
 
Java básico - Módulo 06: Array
Java básico - Módulo 06: ArrayJava básico - Módulo 06: Array
Java básico - Módulo 06: Array
 
POO - 12 - A Classe Object
POO - 12 - A Classe ObjectPOO - 12 - A Classe Object
POO - 12 - A Classe Object
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetos
 
Java 00 Poo
Java 00 PooJava 00 Poo
Java 00 Poo
 

Destaque (6)

POO Herança
POO HerançaPOO Herança
POO Herança
 
PCII - INTERFACES EM JAVA: EXEMPLOS
PCII - INTERFACES EM JAVA: EXEMPLOSPCII - INTERFACES EM JAVA: EXEMPLOS
PCII - INTERFACES EM JAVA: EXEMPLOS
 
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e HerançaJava - Aula 4 - Sobrecarga de construtores, UML e Herança
Java - Aula 4 - Sobrecarga de construtores, UML e Herança
 
Curso Java Basico
Curso Java BasicoCurso Java Basico
Curso Java Basico
 
Introdução ao Java
Introdução ao JavaIntrodução ao Java
Introdução ao Java
 
Curso Java Basico
Curso Java BasicoCurso Java Basico
Curso Java Basico
 

Semelhante a Aula4

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
 
introdução a linguagem java-2003
introdução a linguagem java-2003introdução a linguagem java-2003
introdução a linguagem java-2003
elliando dias
 
Java 08 Modificadores Acesso E Membros De Classe
Java 08 Modificadores Acesso E Membros De ClasseJava 08 Modificadores Acesso E Membros De Classe
Java 08 Modificadores Acesso E Membros De Classe
Regis Magalhães
 
Java aprendendo linguagem.ppt
Java aprendendo linguagem.pptJava aprendendo linguagem.ppt
Java aprendendo linguagem.ppt
Emerson Cardoso
 
Linguagens Poo
Linguagens PooLinguagens Poo
Linguagens Poo
Infogenius
 
AspectJ — Programação orientada a aspectos em Java
AspectJ — Programação orientada a aspectos em JavaAspectJ — Programação orientada a aspectos em Java
AspectJ — Programação orientada a aspectos em Java
elliando dias
 

Semelhante a Aula4 (20)

Aula5
Aula5Aula5
Aula5
 
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
 
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
 
Introdução ao Java 5
Introdução ao Java 5Introdução ao Java 5
Introdução ao Java 5
 
java_avancado.pdf
java_avancado.pdfjava_avancado.pdf
java_avancado.pdf
 
Java Desktop
Java DesktopJava Desktop
Java Desktop
 
Final e aastract
Final e aastractFinal e aastract
Final e aastract
 
introdução a linguagem java-2003
introdução a linguagem java-2003introdução a linguagem java-2003
introdução a linguagem java-2003
 
Java 08 Modificadores Acesso E Membros De Classe
Java 08 Modificadores Acesso E Membros De ClasseJava 08 Modificadores Acesso E Membros De Classe
Java 08 Modificadores Acesso E Membros De Classe
 
Java aprendendo linguagem.ppt
Java aprendendo linguagem.pptJava aprendendo linguagem.ppt
Java aprendendo linguagem.ppt
 
Java - Visão geral e Exercícios
Java - Visão geral e ExercíciosJava - Visão geral e Exercícios
Java - Visão geral e Exercícios
 
Classes Anônimas, Internas e Coleções Java
Classes Anônimas, Internas e Coleções JavaClasses Anônimas, Internas e Coleções Java
Classes Anônimas, Internas e Coleções Java
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem III
 
Linguagens Poo
Linguagens PooLinguagens Poo
Linguagens Poo
 
Java20141219
Java20141219Java20141219
Java20141219
 
Java
JavaJava
Java
 
AspectJ — Programação orientada a aspectos em Java
AspectJ — Programação orientada a aspectos em JavaAspectJ — Programação orientada a aspectos em Java
AspectJ — Programação orientada a aspectos em Java
 
Desenvolvendo para WEB com JAVA
Desenvolvendo para WEB com JAVADesenvolvendo para WEB com JAVA
Desenvolvendo para WEB com JAVA
 
Java primeiros-passos
Java primeiros-passosJava primeiros-passos
Java primeiros-passos
 
Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...
Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...
Java básico - Módulo 08 - Introdução à programação orientada à objetos oo - c...
 

Aula4

  • 1. Programação Orientada a Objetos com Java Aula 4 professor: Fábio Kimura e-mail: fkimura@yahoo.com
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.