UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema...

15
1 1 LPOO Profs. Rafael de A. Segura, Vladimir Camelo e Gustavo Molina. Aula 02 UNIP - Universidade Paulista Atualizado em : fev/2018

Transcript of UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema...

Page 1: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

1 1

LPOO

Profs. Rafael de A. Segura,

Vladimir Camelo e Gustavo Molina.

Aula 02

UNIP - Universidade Paulista

Atualizado em : fev/2018

Page 2: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

2 2

Agenda

Classes Objetos Diferença entre Classe e Objeto Atributos Métodos

Page 3: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

3

As classes são as partes mais importantes de qualquer sistema orientada a

objetos.

Usamos as classes para capturar o vocabulário do sistema que está em

desenvolvimento. Essas classes podem incluir abstrações que são parte do domínio

do problema, assim como as classes que fazem uma implementação. Podemos usar

ainda as classes para representar itens de software, de hardware e até itens que

sejam somente conceituais.

O que é uma Classe?

“Uma classe é uma entidade descreve um conjunto de objetos com propriedades e

comportamentos semelhantes e com relacionamentos comuns com outros objetos”

Conceito

• Toda classe possui um nome;

• Possuem visibilidade, exemplo: public, private,

protected;

• Possuem membros como: Características e Ações;

Page 4: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

4

Exemplo de declaração de uma classe

public class MinhaClasse{ //ATRIBUTOS OU PROPRIEDADES //MÉTODOS }

Page 5: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

5

Exemplo

Fonte: Adptado de https://www.devmedia.com.br/introducao-a-programacao-orientada-a-objetos-em-java/26452. Acessado em jan 2016

Cachorro

nome: String peso: float corOlhos: String

falar():void andar():void comer():void dormir():void pegarOsso():void

Nome da Classe

Atributos

Métodos

Classe Cachorro

Page 6: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

6

Exemplo

Cachorro

nome: String peso: float corOlhos: String

falar():void andar():void comer():void dormir():void pegarOsso():void

public class Cachorro{

public String nome;

public float peso;

public String corOlhos;

public void falar(){

//MÉTODO FALAR

}

public void andar(){

//MÉTODO ANDAR

}

public void comer(){

//MÉTODO COMER

}

public void dormir(){

//MÉTODO DORMIR

}

public void pegarOSso(){

//MÉTODO PEGAROSSO

}

}

Page 7: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

7

Atributos

• Os atributos são as propriedades de um objeto, também são conhecidos como

variáveis ou campos.

• Essas propriedades definem o estado de um objeto, fazendo com que esses

valores possam sofrer alterações

public class Cachorro{

public String nome; public int peso; public String corOlhos;

}

Page 8: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

8

Métodos

• Os métodos são ações ou procedimentos, onde podem interagir e se

comunicarem com outros objetos.

• A execução dessas ações se dá através de mensagens, tendo como função o

envio de uma solicitação ao objeto para que seja efetuada a rotina desejada.

• Como boas práticas, é indicado sempre usar o nome dos métodos declarados

como verbos, para que quando for efetuada alguma manutenção seja de fácil

entendimento. Exemplos de nomes de métodos:

• voltar

• avançar

• correr

• resgatarValor

• pesquisarNomes

Page 9: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

9

Exemplo de implementação de um método da Classe Cachorro

class Cachorro{ int tamanho; String nome;

void falar(){ if(tamanho > 60) System.out.println("Wooof, Wooof!"); else if(tamanho > 14) System.out.println("Ruff!, Ruff!"); else System.out.println("Yip!, Yip!"); } }

Page 10: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

10

Diferença entre Classe e Objeto

https://www.google.com/search?q=diferenca+entre+classe+e+objeto&hl=pt-BR&tbm=isch&tbs=rimg:CZyC24WRpPKSIji94SETdbqL9gVvLh9wiLlx0SCJBlQlN_1K3SUviTsqRh_1V4jPSz95M6r1mK5wf0Hki8TsO2mc1MPSoSCb3hIRN1uov2EUAw77D6OeJpKhIJBW8uH3CIuXERM37CzcA9QBIqEgnRIIkGVCU38hH8Fw9THTuuOyoSCbdJS-JOypGHEfs7i_1e2ZKnlKhIJ9XiM9LP3kzoRj5sARzUJTG4qEgmvWYrnB_1QeSBFjit34LMlweioSCbxOw7aZzUw9ESj5omfVM30l&tbo=u&sa=X&ved=0ahUKEwi8hpq3qZrZAhWGGpAKHdAzDW0Q9C8IHA&biw=1536&bih=734&dpr=1.25#imgrc=r1mK5wf0Hkg9AM:

• Objetos são características definidas pela classe. • Uma classe é um modelo, um projeto algo que não se pode tocar.

Page 11: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

11

Instanciando a classe Cachorro public class TestaCachorro {

public static void main(String[] args) { Cachorro cachorro1 = new Cachorro(); cachorro1.nome = "Pluto"; cachorro1.corOlhos = "azuis"; cachorro1.peso = 53f;

Cachorro cachorro2 = new Cachorro(); cachorro2.nome = "Rex"; cachorro2.corOlhos = "amarelo"; cachorro2.peso = 22f;

Cachorro cachorro3 = new Cachorro(); cachorro3.nome = "Bob"; cachorro3.corOlhos = "marrom"; cachorro3.peso = 13f;

}

}

Page 12: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

12

Classe de teste TestaCachorro: invocando método

public class Testa_Cachorro {

public static void main(String[] args) {

Cachorro bob = new Cachorro();

bob.tamanho = 70;

Cachorro rex = new Cachorro();

rex.tamanho = 8;

Cachorro scooby = new Cachorro();

scooby.tamanho = 35;

bob.falar();

rex.falar();

scooby.falar();

}

}

Page 13: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

13

Warm Up

• Implementar o exemplo da classe cachorro completo, a classe TestaCachorro e instanciar 3 objetos testanto o método falar.

Page 14: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

14

Exercício

• Implementar a classe:

Aluno

nome:String altura:float idade:int

imprimirEstado ():void

1) Crie a classe Aluno e classe de teste TestarAluno. a) Instancie 2 objetos. b) Crie um método que mostre o estado do objeto, ou seja, o valor de

todos os seus atributos.

Page 15: UNIP - Universidade Paulista LPOO...3 As classes são as partes mais importantes de qualquer sistema orientada a objetos. Usamos as classes para capturar o vocabulário do sistema

15

Exercício

• Implementar a classe:

Carro

marca:String modelo:String ano:int valor: float statusMotor:boolean

ligar ():void desligar(): void

1) Crie a classe Carro e classe de teste TestarCarro. a) Instancie 2 objetos. Eles devem ser instanciados com o statusMotor

desligado = 0; b) Mostre na tela o estado dos objetos instanciados