0% acharam este documento útil (0 voto)
44 visualizações19 páginas

Programação OO em Desenvolvimento Android

O documento discute programação orientada a objetos para desenvolvimento Android, abordando conceitos como classes, objetos, herança e polimorfismo. É apresentada uma atividade sobre contas correntes e exemplos de como implementar herança entre classes.

Enviado por

Filipe Mendes
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
44 visualizações19 páginas

Programação OO em Desenvolvimento Android

O documento discute programação orientada a objetos para desenvolvimento Android, abordando conceitos como classes, objetos, herança e polimorfismo. É apresentada uma atividade sobre contas correntes e exemplos de como implementar herança entre classes.

Enviado por

Filipe Mendes
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Desenvolvimento para

Dispositivos Móveis
Aula 3 – Programação OO para Desenvolvimento Android
Programação Orientada a Objetos

O estado do objeto é armazenado nos atributos e o comportamento é


exposto através dos métodos

class Cachorro{
int tamanho;
string raca;

public void latir(){


}
}
Programação Orientada a Objetos

public class Principal{


public static void main(String args[]){
cachorro c1 = new Cachorro();
[Link]ça = "Pitbull";
[Link] = 3;
[Link]();
}
}
Atividade – Conta Corrente

Criar uma classe Conta que irá ContaCorrente


manipular contas de um banco
int numero
float saldo
String nome
emitirSaldo()
sacar(float valor)
depositar(float valor)
Programação Orientada a Objetos

Conceitos Base

Classe, Objeto (estado e comportamento), Relacionamento,


Encapsulamento (public, private), Herança e Polimorfismo
Herança

Diferentes tipos de objetos têm, frequentemente, algo em comum. No


entanto, cada um também possui estado ou comportamento adicionais
que os tornam diferentes

A POO permite que classes herdem estado e comportamento comumente


usado de outras classes

Em Java, cada classe é permitido ter apenas uma superclasse direta, e


cada superclasse tem o potencial para um número ilimitado de subclasses
Herança

Mecanismo que permite que classes, chamadas de


subclasse, herdem (reutilizem) atributos e
métodos de outras classes, superclasses

As subclasses podem adicionar novos métodos


e/ou atributos

Facilita a reutilização de código


Ave é um tipo de Animal

Mamífero é um tipo de
Animal
Herança

A classe Funcionário apresenta 2 descendentes e um ancestral;


José é um objeto instanciado da classe Gerente;
A classe Técnico herda todos os atributos de Funcionário e Pessoa;
A classe Funcionário é subclasse de Pessoa e superclasse de Gerente e
Técnico;
O objeto Pedro poderia herdar os métodos de Pessoa, caso existissem;
Se for incluído um novo atributo na classe Pessoa todas as outras
descendentes passariam a ter esse atributo também.
Como Implementar?

Para criar uma subclasse, usamos a palavra reservada extends

Exemplo

class subClasse extends superClasse


{
...
}
Exemplo
Pessoa Física
String CPF
Cliente
String nome
String end
String tel
String ultimaCompra Pessoa Jurídica
emitirNotaFiscal() String CNPJ
String nomeFantasia
String razaoSocial
Classe Cliente Classe PessoaFisica

class Cliente { class PessoaFisica extends Cliente{


String nome; String cpf;
String end; }
public void emitirNotaFiscal(){
[Link]("Nota Fiscal");
}
}
Classe PessoaJuridica Classe Principal

class PessoaJuridica extends Cliente{ class Main {


String cnpj; public static void main(String[] args) {
String nomeFantasia; Cliente f1 = new PessoaFisica();
} [Link] = "Ana";
[Link] = "Rua A";
[Link]([Link]);
[Link]();
}
}
Polimorfismo

1. Formas de modificar totalmente o código de um método herdado de uma


superclasse

Ex.:

- Classe 1 possui 2 métodos: métodoA() e métodoB()

- Classe 2 herda a classe 1

- Classe 2 reescreve todo o métodoA() que pertence a classe 1


Polimorfismo

2. Está relacionado, também, à possibilidade de se usar o mesmo nome


para métodos diferentes e à capacidade que o programa tem em
discernir, dentre os métodos homônimos, aquele que deve ser executado
Exemplo

Superclasse: Carro
Método: aumentar()

Subclasses: Fusca, Ferrari, Gol


Exemplo

Todo ano, os carros tem um aumento: a Ferrari 5%, o Fusca 1% e o Gol 3%

Cada objeto terá que calcular seu aumento de forma diferente, pois
terão diferentes valores de aumento

Método aumentar() diferente em cada uma das subclasses existentes:

[Link]() [Link]()
class Carro { public class TesteVeiculo {
void aumentar() { public static void main(String[] s) {
[Link] (“Ver tabela”);
} Carro c1 = new Carro();
} [Link]();
Carro f1 = new Fusca();
class Fusca extends Carro { [Link]();
void aumentar() { Ferrari f2 = new Ferrari();
[Link] (“3%”); [Link]();
} }
} }

class Ferrari extends Carro {


void aumentar() {
[Link] (“15%”);
}
}

Você também pode gostar