Professional Documents
Culture Documents
Introduo
Orientao a objetos um paradigma de linguagem de programao; Java orientado a objetos. Assim como Object Pascal, C#, C++ e PHP; Pascal, C e Cobol no so orientado a objetos. Elas seguem o paradigma estruturado;
na
O paradigma orientado a objetos baseia-se na representao do mundo por objetos que interagem entre si, e cada objeto tem seu prprio estado e comportamento.
Organizao de cdigo; Melhora a manuteno de cdigo; Potencializa o reaproveitamento de cdigo; Permite encapsular as regras de negcio.
O que um objeto?
uma entidade do mundo real.
CADEIRAS
CARROS PESSOAS
Objetos do mundo real possuem caractersticas: cor, tamanho, peso, preo... Objetos do mundo real tambm possuem comportamentos: correm, voam, empurram, aceleram... Eles fazem coisas, eles executam aes.
Classes em Java
Classe Cachorro
class Cachorro{ String nome; int idade; void late(){...} void brinca(){...} }
Objetos em Java
Objeto uma instncia de uma classe (podemos dizer que ele o objeto de uma classe)
10
Exemplos de Objetos
Classes em Java
Vamos criar uma classe em Java. Imagine uma conta bancria. As propriedades de um conta bancria so: nmero da conta, nome do cliente e saldo. O cdigo desta classe em Java :
class Conta{ int numero; String nomeCliente; double saldo; }
12
Esta uma classe que representa uma entidade do mundo real; No existe mtodo main nesta classe. Por qu?
class Conta{ int numero; String nomeCliente; double saldo; }
Atributos
13
class Programa{ public static void main(String[] args){ Conta contaJoao; contaJoao = new Conta(); contaJoao.nomeCliente = Joo; contaJoao.numero = 1; contaJoao.saldo = 1000; } } System.out.println(Saldo do Joo: + contaJoao.saldo);
14
Mtodos
Os mtodos expressam comportamentos e aes de uma classe. Uma comportamento comum em uma conta bancria realizar a ao de transferir dinheiro.
class Conta{ int numero; String nomeCliente; double saldo; void transferir(Conta contaDestino, double valor){ this.saldo = this.saldo - valor; contaDestino.saldo += valor; }
17
Invocando Mtodos
class Programa{ public static void main(String[] args){
Conta contaJoao; contaJoao = new Conta(); contaJoao.nomeCliente = Joo; contaJoao.numero = 1; contaJoao.saldo = 1000; System.out.println(Saldo do Joo: + contaJoao.saldo); Conta contaMaria = new Conta(); contaMaria.nomeCliente = Maria; contaMaria.numero = 2; contaMaria.saldo = 5000; System.out.println(Saldo da Maria: + contaMaria.saldo);
contaJoao.transferir(contaMaria, 500); System.out.println(Saldo novo do Joo: + contaJoao.saldo); System.out.println(Saldo novo da Maria: + contaMaria.saldo);
18