A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

CLASSES EM JAVA Dilvan Moreira (baseado no livro Big Java)

Apresentações semelhantes


Apresentação em tema: "CLASSES EM JAVA Dilvan Moreira (baseado no livro Big Java)"— Transcrição da apresentação:

1 CLASSES EM JAVA Dilvan Moreira (baseado no livro Big Java)

2 Lembrando Atribuição …  Operador: =  = não significa uma afirmação de igualdade  = é usado para mudar o valor de uma variável 1. int luckyNumber = 13; //[linha 1] 2. luckyNumber = 12; //[linha 2]

3 Leitura  Primeira metade do capítulo 2 (1st Edition)  2.1 Using and Constructing Objects  2.2 Object Variables  2.3 Defining a Class  2.4 Testing a Class  2.5 Instance Fields  2.6 Constructors

4 Programação  Programação é o problema de especificar:  os dados que vão ser usados ou manipulados  as operações que agem sobre esses dados  a ordem em que as operações são aplicadas aos dados  Até agora: especificamos dados usando os tipos primitivos  com operações pré-definidas como +, -, *, e /

5 Programando com Classes  E se os dados que queremos trabalhar são mais complexos que esses tipos primitivos?

6 Programando com Classes  E se os dados que queremos trabalhar são mais complexos que esses tipos primitivos?  Nós podemos criar nossos próprios tipos de dados: criando uma classe, nela:  especificamos a natureza dos dados que vamos usar  criamos as operações que vão ser feitas no nosso conjunto de dados  Operações definidas dentro de uma classe são chamadas métodos

7 Programando com Classes  Nós podemos ter múltiplas variáveis de tipos primitivos (ex: int)  cada uma com um nome diferente  cada uma com um valor diferente int x = 5; int y = 17;  Similarmente para classes: Nós podemos ter múltiplas variáveis (ou instâncias) de uma classe (ex: String)  cada uma com um nome diferente  cada uma com um valor diferente String name = “Tamara Munzner”; String computerName = “pangolin”;

8 Programando com Objetos  Object: uma instancia específica de uma classe  Classes são moldes para a criação de objetos  do mesmo modo que o tipo int é um molde para a criação de números inteiros  programadores definem classes  e objetos são criados a partir de classes

9 Objetos e Classes  Objeto: entidade que manipulamos nos programas (pela chamada de métodos)  Cada objeto pertence a uma classe. Por exemple, System.out pertençe a classe PrintStream

10 Métodos  Método: Sequência de instruções que acessam os dados de um objeto  Objetos são manipulados através de seus métodos  Classe: Define um conjunto de objetos com o mesmo comportamento (conjunto de métodos)  A classe determina quais métodos são permitidos String greeting = "Hello"; greeting.println() // Error greeting.length() // OK

11 Exemplo de Objeto public class StringTest { public static void main (String[] args) { String firstname; String lastname; firstname = new String (“Kermit"); lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); }

12 Exemplo de Objeto  Declara dois objetos String diferentes  um chamado firstname e outro chamado lastname public class StringTest { public static void main (String[] args) { String firstname; String lastname; firstname = new String ("Kermit"); lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); }

13 Exemplo de Objeto  A simples declaração de uma variável não cria objetos! public class StringTest { public static void main (String[] args) { String firstname; String lastname;

14 Exemplo de Objeto  A simples declaração de uma variável não cria objetos!  Apenas diz ao compilador para reservar espaço para esses dois nomes  Esses espaços não vão armazenar os objetos  Eles guardam ponteiros (referências) para o endereço onde os objetos são armazenados.  Os objetos são armazenados em algum lugar na memória. public class StringTest { public static void main (String[] args) { String firstname; String lastname;

15 public class StringTest { public static void main (String[] args) { String firstname; String lastname; firstname = new String ("Kermit"); lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); } Exemplo de Objeto  Assim firstname e lastname não vão conter objetos Strings  elas contém referencias para objetos String

16 Construtores  Construtores: método com o mesmo nome da classe  sempre usado com new  cria o objeto  geralmente inicializado com dados firstname = new String (“Kermit");

17 public class StringTest { public static void main (String[] args) { String firstname; String lastname; firstname = new String (“Kermit"); lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); } Exemplo de Objeto  new e o construtor de String criam uma instancia da classe String  um objeto String com o valor “Kermit”  Coloca esse objeto em algum lugar da memória  coloca o endereço do objeto em firstname

18 Exemplo de Objeto firstname

19 Exemplo de Objeto firstname String object “Kermit” expressão no lado direito do operador

20 Exemplo de Objeto firstname String object “Kermit” variável aponta para o resultado da expressão da direita: no caso, o objeto string “Kermit”

21 public class StringTest { public static void main (String[] args) { String firstname; String lastname; firstname = new String (“Kermit"); lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); } Exemplo de Objeto  Do mesmo jeito …

22 Exemplo de Objeto  Declaração e podem ser feitos na mesma linha  exatamente com é feito com tipos primitivos public class StringTest { public static void main (String[] args) { String firstname = new String (“Kermit"); String lastname = new String (“theFrog"); System.out.println("I am not " + firstname + " " + lastname); }

23 Programa  Crie uma classe para representar retângulos. Nessa classe crie um método intersection que calcula a intersecção de dois retângulos.  Rectangle r3 = r1.intersection(r2);  Escreva um programa IntersectionPrinter que constrói dois retângulos, imprime seus valores, acha a interseção entre eles e imprime os valores da interseção.

24 Perguntas?


Carregar ppt "CLASSES EM JAVA Dilvan Moreira (baseado no livro Big Java)"

Apresentações semelhantes


Anúncios Google