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

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

CONSTRUINDO CLASSES Dilvan Moreira (baseado no livro Big Java)

Apresentações semelhantes


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

1 CONSTRUINDO CLASSES Dilvan Moreira (baseado no livro Big Java)

2 Leitura  Capítulo 2 (1st Edition)

3 Lembrando: Conta Bancária - Variáveis /** Um conta bancária tem um saldo que pode ser mudado por depósitos e retiradas. */ public class BankAccount{ }

4 Lembrando: Conta Bancária - Variáveis public class BankAccount{ double balance; }

5 Lembrando: Conta Bancária - Construtores public class BankAccount{ double balance; public BankAccount() { balance = 0; }

6 Lembrando: Conta Bancária - Construtores public class BankAccount{ double balance; public BankAccount() { balance = 0; } public BankAccount(double initialBalance) { balance = initialBalance; }

7 Lembrando: Conta Bancária - depósito public class BankAccount{ double balance;... public void deposit(double amount) { double newBalance= balance + amount; balance = newBalance; }

8 Lembrando: Conta Bancária - Saque public class BankAccount{ double balance;... public void withdraw(double amount) { balance = balance - amount; }

9 Lembrando: Conta Bancária - Saldo public class BankAccount{ double balance;... public double getBalance() { return balance; }

10 Lembrando: Conta Bancária - Saldo public class BankAccount{ double balance;... public double getBalance() { return balance; }

11 Comportamento: Transferência  Comportamento de uma conta:  transferência entre contas  Métodos da classe BankAccount:  transferTo  Interface: public void transferTo(BankAccount b, double x) Transferindo dinheiro BankAccount harry= new BankAccount(100); momsSavings.transferTo(harry, 200); System.out.println(harry.getBalance()); // 300

12 Conta Bancária – Transferência public class BankAccount{... public void transferTo(BankAccount b, double x){ }

13 Conta Bancária – Transferência public class BankAccount{... public void transferTo(BankAccount b, double x){ balance= balance – x; }

14 Conta Bancária – Transferência public class BankAccount{... public void transferTo(BankAccount b, double x){ balance= balance – x; b.balance= b.balance + x; }

15 Conta Bancária – this public class BankAccount{... public void transferTo(BankAccount b, double x){ this.balance= this.balance – x; b.balance= b.balance + x; }

16 Conta Bancária – this public class BankAccount{... public void transferTo(BankAccount b, double x){ this.balance= this.balance – x; b.balance= b.balance + x; }  this se refere ao objeto corrente  Útil quando uma das variáveis tem o mesmo nome que um parâmetro public void transferTo(BankAccount b, double balance){ this.balance= this.balance – balance; b.balance= b.balance + balance; }

17 Conta Bancária – Teste transferTo! public class BankAccount{ double balance;... public static void main(String[] args){ BankAccount mom= new BankAccount(2000); BankAccount harrys = new BankAccount(1); mom.transferTo(harrys, 200) System.out.println(mom.getBalance()); }

18 Entrada pelo Teclado  Usuário usa o teclado para digitar algo:  programa guarda entrada em variável  Quer uma classe para fazer isso?  Sempre procure uma classe já pronta primeiro  A classe Scanner faz isso  java.util.Scanner  melhor que System.in, o análogo de System.out

19 import java.util.Scanner; public class Echo { public static void main (String[] args) { String message; Scanner scan = new Scanner (System.in); System.out.println ("Enter a line of text: "); message = scan.nextLine(); System.out.println ("You entered: \"" + message + "\""); } Exemplo Scanner Class

20 import java.util.Scanner; public class Echo { public static void main (String[] args) { String message; Scanner scan = new Scanner (System.in); System.out.println ("Enter a line of text: "); message = scan.nextLine(); System.out.println ("You entered: \"" + message + "\""); } Exemplo Scanner Class  Importe Scanner class do pacote java.util

21 Importando Pacotes  Coleção de classes são agrupadas em pacotes  tell Java which packages to keep track of with import statement  Cheque a API Java para encontrar que pacotes contém a classe correta para você  Você não precisa importar String, System.out, etc porque classes básicas, que ficam no pacote java.lang são importadas automaticamente

22 import java.util.Scanner; public class Echo { public static void main (String[] args) { String message; Scanner scan = new Scanner (System.in); System.out.println ("Enter a line of text: "); message = scan.nextLine(); System.out.println ("You entered: \"" + message + "\""); } Exemplo Scanner Class  Declara variável string para ser guardar os caracteres que o usuário digita.

23 import java.util.Scanner; public class Echo { public static void main (String[] args) { String message; Scanner scan = new Scanner (System.in); System.out.println ("Enter a line of text: "); message = scan.nextLine(); System.out.println ("You entered: \"" + message + "\""); } Exemplo Scanner Class  Construtor cria objeto Scanner  pode ter qualquer nome, como keyboardStuff ou foo

24 import java.util.Scanner; public class Echo { public static void main (String[] args) { String message; Scanner scan = new Scanner (System.in); System.out.println ("Enter a line of text: "); message = scan.nextLine(); System.out.println ("You entered: \"" + message + "\""); } Exemplo Scanner Class  Pede entrada di usuário

25 import java.util.Scanner; public class Echo { public static void main (String[] args) { String message; Scanner scan = new Scanner (System.in); System.out.println ("Enter a line of text: "); message = scan.nextLine(); System.out.println ("You entered: \"" + message + "\""); } Exemplo Scanner Class  nextLine ler tudo que for digitado até um Enter  retorna uma longa string de caracteres

26 import java.util.Scanner; public class Echo { public static void main (String[] args) { String message; Scanner scan = new Scanner (System.in); System.out.println ("Enter a line of text: "); message = scan.nextLine(); System.out.println ("You entered: \"" + message + "\""); } Exemplo Scanner Class  Imprime tudo que foi digitado

27 Perguntas?


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

Apresentações semelhantes


Anúncios Google