introdução ao java · java • cada declaração de classe que tenha public deve ... herança •...

35
Introdução ao Java Prof. Herbert Rausch Fernandes

Upload: vudung

Post on 09-Nov-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Introdução ao Java

Prof. Herbert Rausch Fernandes

Orientação a Objetos

• Programação Orientada por Objetos: é a construção de sistemas de software como

uma coleção estruturada de implementações de tipos abstratos de dados.

Tipos abstratos de dados:Módulos são construídos com base em

abstrações de dados (classes).

Classe

• Uma classe define:– Estrutura de dados que representa uma

“entidades”;– Implementações das operações sobre a estrutura– Classe é um “molde” para criar um objeto

• Objeto: em resumo, instância de uma classe

Classe

• Uma classe é uma estrutura que abstrai um conjunto de objetos com características similares.

Uma classe define o comportamento de seus objetos através de métodos e os estados possíveis destes objetos através de atributos.

Classe

• Classe é um conceito estático: uma classe é um elemento reconhecido no texto do programa.

• Objeto é um conceito puramente dinâmico, o qual pertence não ao texto do programa, mas à memória do computador.

Objeto

Qual é a classe dos objetos abaixo?

Orientação a Objetos

• Programação Orientada a Objetos é a programação implementada pelo envio de mensagens a objetos.

• Cada objeto irá responder às mensagens conhecidas por este, e cada objeto poderá enviar mensagens a outros, para que sejam atendidas.

JAVA

JAVA

JAVA

• Cada declaração de classe que tenha public deve ser armazenada em um arquivo .java com o mesmo nome

• A palavra public representa um modificador de acesso

• Quando se executa uma classe específica, o metodo main é automaticamente executado pela JVM

JAVA

Fonte: Deitel & Deitel. JAVA – Como Programa. 9ª Edição

JAVA

Pode-se executar a classe abaixo diretamente?

Fonte: Deitel & Deitel. JAVA – Como Programa. 9ª Edição

JAVA

Fonte: Deitel & Deitel. JAVA – Como Programa. 9ª Edição

Função Construtora

• Tem o mesmo nome que a classe e sem tipo de retorno;

• É opcional;• Se não for definida, por default a JVM executa

uma construtora sem parâmetros;• Chamada a construtora ocorre quando cria o

objeto;NomeClasse y = new NomeClasse();

Métodos

• As funções de uma classe são conhecidas como métodos;

• A operação de chamar um método de um objeto é interpretada como “enviar mensagem ao objeto receptor”.

• Objeto receptor é aquele que recebe a mensagem e trata a mensagem;

Métodos

• Executar a mensagem é executar a função membro do objeto

• Métodos são compartilhados por todos os objetos de uma classe;

• Os objetos interagem através de mensagens.

Função Construtora

Função Construtora

Encapsulamento

Fonte: Deitel & Deitel. JAVA – Como Programa. 9ª Edição

Exercício

• Altere a classe GradeBookTest instanciando 3 objetos do tipo GradeBook, defina valores para todos os atributos;

• Imprima na linha de comando os valores dos atributos de cada objeto.

Composição

• Uma classe poder ter referências a objetos de outras classes;

• Ou seja, variáveis de uma classe pode ser do tipo de uma outra classe definida.

Composição

Fonte: Deitel & Deitel. JAVA – Como Programa. 9ª Edição

Composição

Fonte: Deitel & Deitel. JAVA – Como Programa. 9ª Edição

Composição

Fonte: Deitel & Deitel. JAVA – Como Programa. 9ª Edição

Composição

Fonte: Deitel & Deitel. JAVA – Como Programa. 9ª Edição

Polimorfismo

Herança

Herança

• Herança de classe é uma técnica para construir novas classes, chamadas de classes derivadas, a partir das classes já existentes, que são ditas classes base.

• Herança de classe permite o reuso do comportamento de uma classe na definição de outra.

Herança

• A classe derivada (subclasse) herda todas as características de sua classe base (superclasse) e pode adicionar outras.

• Herança de classe é um mecanismo para estender a funcionalidade de uma aplicação pelo reúso da funcionalidade da classe ascendente

Herança

Herança

Herança

Herança

Herança

Revisão

• Classes são abstrações de comportamentos e atributos de objetos similares;

• Objeto é um conceito dinâmico. Ela representa a instância de uma classe com estados e comportamentos.

• Composição é quando um classe possui atributos que são objetos de outras classes, ou dela mesma.

• Herança é um tipo de polimorfismo que permite uma maior reuso do software. As classes filhas herdam comportamento e atributos da classe pai (superclasse).

Referência bibliográfica

JAVA – Como Programar. Deitel & Deitel