Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouGabriel Henrique de Escobar Sacramento Alterado mais de 8 anos atrás
1
Conceitos de OO em Java Parte I
Curso de Linguagem Java
2
Estrutura de uma classe
Jose Antonio F. Macedo Estrutura de uma classe Classe class Pessoa { } Propriedades int idade; Pessoa conjuge; Métodos int qualIdade () { return idade; } void casar (Pessoa p) { conjuge = p; Linguagem Java Linguagem Java
3
Classes Declaração: class Ponto { ... }
Jose Antonio F. Macedo Classes Qualquer objeto do tipo Ponto possuirá dois atributos denominados x e y Declaração: class Ponto { ... } Propriedades: dados que as instâncias da classe conterão: float x, y; X = 1 Y = 1 X = 2 Y = 2 X = 3 Y = 3 Linguagem Java Linguagem Java
4
Instanciação de Objetos
Jose Antonio F. Macedo Instanciação de Objetos Toda classe criada pode ser usada na declaração de varíaveis (objetos). Exemplo: class Editor { public static void main (String arg[]) { Ponto p; int a = 2; } Declaração de uma variável p do tipo da classe Ponto. Declaração de uma variável a do tipo inteiro. X = ? Y = ? 2 Linguagem Java Linguagem Java
5
Instanciação de Objetos
Jose Antonio F. Macedo Instanciação de Objetos Dada uma classe, pode ser criada uma nova instância desta classe usando o comando new. Exemplo: class Editor { public static void main (String arg[]) { Ponto p = new Ponto(); } Linguagem Java Linguagem Java
6
Instanciação de Objetos
Jose Antonio F. Macedo Instanciação de Objetos class Editor { public static void main (String arg[]) { Ponto p = new Ponto(); } p X = 0 Y = 0 Linguagem Java Linguagem Java
7
Jose Antonio F. Macedo Atribuição de valores As propriedades dos objetos podem ser manipuladas diretamente: Ponto p1 = new Ponto(); p1.x = 1; p1.y = 2; // p1 representa o ponto (1,2) Ponto p2 = new Ponto(); p2.x = 3; p2.y = 4; // p2 representa o ponto (3,4) X = 1 Y = 2 p1 X = 3 Y = 4 p2 Linguagem Java Linguagem Java
8
Atribuição de valores (cont.)
Jose Antonio F. Macedo Atribuição de valores (cont.) Atenção !!! Ponto p1 = new Ponto(); p1.x = 1; Declaração Instanciação Atribuição Linguagem Java Linguagem Java
9
Acessando membros de uma classe
Jose Antonio F. Macedo Acessando membros de uma classe Membros de uma classe são suas propriedades e métodos. p1.x = 1; p1 . x = 1 Nome do objeto Separador Nome do Atributo Valor atribuído ao atributo do objeto Linguagem Java Linguagem Java
10
Métodos Define o comportamento da classe. Declaração:
Jose Antonio F. Macedo Métodos Define o comportamento da classe. Declaração: class Ponto { int x, y; void mover ( int dx, int dy) { x += dx; y += dy; } Linguagem Java Linguagem Java
11
Tipos de Métodos Métodos Construtores Métodos Operacionais
Jose Antonio F. Macedo Tipos de Métodos class Pessoa { int a; MinhaClasse b; Pessoa() … } float Exemplo (int a) Métodos Construtores Métodos Operacionais Linguagem Java Linguagem Java
12
Jose Antonio F. Macedo Métodos Construtores Devemos usar os métodos construtores quando queremos atribuir valores aos atributos de um objeto no momento de sua criação class Ponto { int x=0; int y=0; { this.x = x; this.y = y; } Método Construtor Ponto (int x, int y) Linguagem Java Linguagem Java
13
Assinatura de um método Construtor
Jose Antonio F. Macedo Assinatura de um método Construtor Ponto (int x, int y) Nome do método deve ser igual ao nome da classe Parâmetros Não possui tipo de retorno Linguagem Java Linguagem Java
14
Uso de Construtores Deve ser usado no momento da criação do objeto:
Jose Antonio F. Macedo Uso de Construtores Deve ser usado no momento da criação do objeto: Ponto p1 = new Ponto(1,2); Ponto p2 = new Ponto(3,4); p1 X = 1 Y = 2 p2 X = 3 Y = 4 Linguagem Java Linguagem Java
15
Método Construtor Exemplo
Jose Antonio F. Macedo Método Construtor Exemplo class EditorGrafico { public static void main (String arg []) Ponto p1, p2; p1 = new Ponto (1,2); p2 = new Ponto (3,4); } Linguagem Java Linguagem Java
16
Jose Antonio F. Macedo Construtor Padrão A linguagem Java declara um construtor padrão, vazio, que não recebe nenhum parâmetro Quando declaramos um novo construtor, esse construtor padrão deixa de existir e é substituído pelo novo construtor Linguagem Java Linguagem Java
17
Jose Antonio F. Macedo Métodos Construtores Usados na criação de um objeto através do comando new Possuem o mesmo nome da classe Podem receber parâmetros que servirão para incialização dos atributos da classe Uma classe pode ter vários métodos construtores Linguagem Java Linguagem Java
18
Métodos Construtores class Funcionario { String nomefunc;
Jose Antonio F. Macedo Métodos Construtores class Funcionario { String nomefunc; float salario; Funcionario (String nome,float sal) { salario = sal; nomefunc = nome; } ... … Método Construtor Outros Métodos Linguagem Java Linguagem Java
19
Exemplo class ProgramaPrincipal {
Jose Antonio F. Macedo Exemplo class ProgramaPrincipal { public static void main (String arg[]) Funcionario func; func = new Funcionario(“Juca”,102f); } Método Construtor Linguagem Java Linguagem Java
20
Métodos Operacionais Implementam as funções de uma classe
Jose Antonio F. Macedo Métodos Operacionais Implementam as funções de uma classe Possuem sintaxe semelhante à sintaxe de definição das funções de um programa procedural Determinam o comportamento da classe e a troca de mensagens com outras classes Linguagem Java Linguagem Java
21
Métodos Operacionais Assinatura Corpo Retorno class Funcionario
Jose Antonio F. Macedo Métodos Operacionais class Funcionario { String nomeFunc; float salario; ... float calcularSalario (int horas) { float salMes = 0; if (horas < 220) { salMes =(salario/220)*horas; } return salMes; Assinatura Corpo Retorno Linguagem Java Linguagem Java
22
Assinatura de um método Operacional
Jose Antonio F. Macedo Assinatura de um método Operacional float calcularSalario (int horas) Tipo de Retorno Nome Parâmetro Linguagem Java Linguagem Java
23
sal = func.calcularSalario(80);
Exemplo Jose Antonio F. Macedo class ProgramaPrincipal { public static void main (String arg[]) { float sal; Funcionario func; func = new Funcionario(“Juca”,2200); System.out.println (sal); } sal = func.calcularSalario(80); Executando o Método calcularSalario da classe Funcionario nomeFunc = “Juca” salario = 2200 calcularSalario(horas) func sal = (salario/220)*horas; sal = (2200/220)*80 sal = 800 sal = func.calcularSalario(80); Linguagem Java Linguagem Java
24
Dinâmica de um Sistema Orientado a Objetos
Estímulo Externo Resposta Linguagem Java
25
Interação entre Objetos Exemplo: Pintando um ponto na tela
Area Desenho e1.criarPonto( cx, cy); CLICK (GUI) Editor p1 Ponto p1 = new Ponto(); Ponto p1.desenhar(); Linguagem Java
26
Chamadas de Método Exemplo
Jose Antonio F. Macedo Chamadas de Método A troca de mensagens entre os objetos é realizada através da chamada de métodos com passagem de parâmetros Exemplo class Editor { void criarPonto (int x1, int y1) { Ponto p1 = new Ponto (); p1.x = x1; p1.y = y1; p1.desenhar(); } Linguagem Java Linguagem Java
27
Mensagem entre Objetos
class Editor { void criarPonto (int x1, int y1) { Ponto p1 = new Ponto (); p1.x = x1; p1.y = y1; p1.desenhar(); } Troca de mensagem de um objeto da classe Editor com o objeto da classe Ponto denominado aqui como p1 Linguagem Java
28
Mensagem entre Objetos
... float calcularBonus (Funcionario f) { float bonus = 0; if ( f.ehChefe ( ) ) { bonus = f.salario * 0.5; } else bonus = f.salario * 0.2; return bonus; Premissas: Método da Classe Folha. Instância denominada a. f.ehChefe ( ); a.calcularBonus (joao); Objeto a Objeto f true true Linguagem Java
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.