Java B sicoáJava B sicoá
Java ObjetoJava Objeto
Prof. Wesley R. Bezerra
Roteiro
• Os conceitos
• Sintaxe
• Exercício
• Conclusão
Objetivo
• Permitir o aluno ter uma
visão geral sobre a
orientação a objetos e os
conceitos relacionados.
Os conceitosOs conceitos
Elementos da POO
• Existem alguns elementos que podem existir na
programação orientada a objetos. São eles:
Classe
Classes abstratas
Interface
Objeto
Atributos
Métodos
Classes
• É um “modelo/forma” para um objeto. Um objeto por
sua vez é uma abstração empobrecida da realidade
com o fim de torná-la computável.
Classe Abstrata
• É uma classe que contem pelo menos um de seus
métodos marcado para posterior implementação, ou
seja, declarado como abstrato.
• Classes abstratas podem ter atributos
Interface
• É um contrato definido para as classes.
• Uma interface não possui atributos ou métodos
implementados, tendo somente a assinatura dos
métodos que as classes que a realizarem devem
implementar.
Objeto
• É uma instância de uma classe.
• O objeto aponta para o endereço de memória onde
se encontra a instância de uma classe de seu tipo.
• Um objeto pode conter:
Atributos
Métodos
Atributos
• São a representação dos estados internos do objeto.
Informações que estão associadas ao conceito
representado pelo objeto.
M todosé
• É através dos métodos que podemos operar sobre os
atributos de uma classe, obtê-los, mudá-los ou ainda
efetuar algum calculo ou processo.
• Devido ao conceito do encapsulamento, é através de
métodos que os objetos se comunicam.
Caracter sticas de umí
Objeto
• Alguns conceitos são importantes para entendermos
melhor os fundamentos da orientação a objetos. São
eles:
Encapsulamento;
Sobrecarga de método;
Herança;
Polimorfismo;
Sobrescrita de método.
Encapsulamento
• É a característica do objeto que indica que somente o
objeto que contem o atributo, pode ter acesso a este
atributo, ou seja, o objeto é como uma cápsula que
contem esses atributos e pela qual não podemos
passar diretamente para acessar estes estados.
Sobrecarga de m todosé
• Esta característica também existem em linguagens
estruturadas. Através dela podemos mudar o
comportamento de um método, mantendo seu
nome igual. No entanto para isto, a assinatura deve
mudar, ou seja, o numero de parâmetros ou ainda o
tipo destes não deve ser igual ao método o qual se
quer sobrecarregar.
Heran aç
• É a capacidade de uma classe filha utilizar os
métodos e atributos da sua superclasse, ou seja, sua
classe pai.
Polimorfismo
• É a capacidade de um método mudar de
comportamento entre as classes que herdam da
mesma classe pai. Podemos através da classe pai
acessar as instancias das classes filhas e usar os
diferentes métodos.
Polimorfismo – cont.
• Exemplo:
Podemos fazer uma classe pai ObjetoCortante que tem um
método cortar(). As classes filhas faca e tesoura reimplementam
este método, as duas cortam, no entanto cada uma corta de uma
forma, ou seja, em cada classe filha o método assume uma forma o
que implica dizer que ele tem várias formas (poli morfo) de
implementação.
Sobrescrita de m todoé
• É a capacidade de um método mudar de
comportamento de uma classe pai para a classe filha.
SintaxeSintaxe
Declarando Classes
• Uma classe é uma abstração da realidade, um
modelo pelo qual representamos uma entidade do
mundo real.
• Sintaxe:
public class <NomeClasse>{
...
}
• Descrição:
<NomeClasse> - nome da classe;
Declarando atributos
• Um atributo é utilizado para guardar os estados de
um objeto.
• Por Exemplo:
o atributo nome de uma classe Pessoa é utilizado para
guardar esta informação de uma pessoa no mundo real.
• Sintaxe:
<escopo> <Tipo> <nomeAtributo>;
• Exemplo:
private int idade;
• Descrição:
<escopo> - escopo de acesso do atributo;
• {public|protected|private}
<Tipo> - tipo do atributo;
• {int|String|...}
<nomeAtributo> - nome do atributo;
Declarando m todosé
• Através dos métodos podemos alterar e ler atributos
de um objeto, ou ainda efetuar funções ou
procedimentos.
• Sintaxe:
<escopo> <retorno> <nomeMetodo>(<Tipo>
<nomeParam>,...){
...
}
• Exemplo:
Public int calcula(int a, int b){
...
}
• Descrição:
<escopo> - escopo de acesso do método;
• {public|protected|private}
<retorno> - retorno do método;
• {int|String|...}
<nomeMetodo> - nome do método;
<Tipo> - tipo do parâmetro;
• {int|String|...}
<nomeParam> - nome do parâmetro;
Instanciando classe
• Para utilizar uma classe devemos a instanciar, este
processo cria um objeto o qual chamamos de
instancia de classe.
• Sintaxe:
<objeto> = new <NomeClasse>();
• Exemplo:
nome = new String();
• Descrição:
<objeto> - nome do objeto;
<NomeClasse> - nome da classe que gerará a nova
instancia;
Chamando m todosé
• Sintaxe:
<objeto>.<nomeMetodo>();
• Exemplo:
pessoa.toString();
• Descrição:
<objeto> - nome objeto;
<nomeMetodo> - nome do método a ser invocado
Exerc cioí
• Fazer uma classe onde seja calculada a soma de dois
números;
• Fazer uma classe onde seja calculada a subtração de
dois números;
• Fazer uma classe onde seja calculada a multiplicação
de dois números;
• Fazer uma página onde seja calculada a divisão de
dois números;
Exerc cioí
• Implemente um programa que leia os dados de uma
pessoa e crie um objeto com estes dados.
• Implemente um programa que cadastre CDs, com:
Nome do autor
Numero de musicas
Tempo total de musicas
Nome gravadora
Exerc cioí
• Implemente as classes necessárias para um carro,
levando em conta que um carro tem:
4 roda
1 motor, que pode ser:
• Gasolina
• Álcool
• Gás
• Diesel
• Flex
• E é fabricado por uma Montadora, que fica em
um País.
Exerc cioí
• fazer um programa que calcule a área de figuras
geométricas. São estas figuras:
Quadrado;
Retângulo;
Paralelogramo;
Triangulo;
Circulo;
Exerc cioí
• Implemente um programa que cadastre Aluno,
Turma, Professor e Sala. A sala deve conter 1 Turma, 1
Professor. A Turma deve conter até 5 Alunos.
Exerc cioí
• Cadastre os Equipamentos de uma Rede, sendo que
estes equipamentos podem ser Roteadores, Switchs,
Hubs, Hosts e PrintServers.
• A rede pode ter até 10 equipamentos.
Conclus oã
• Através dos recursos da orientação a objeto, como a
herança, por exemplo, podemos diminuir a
complexidade dos programas feitos, assim como
aumentar a facilidade de manutenção e o reuso.
ObrigadoObrigado
Perguntas e sugestões
wesleybez@yahoo.com.br

Java Básico :: Orientação a objetos

  • 1.
    Java B sicoáJavaB sicoá Java ObjetoJava Objeto Prof. Wesley R. Bezerra
  • 2.
    Roteiro • Os conceitos •Sintaxe • Exercício • Conclusão
  • 3.
    Objetivo • Permitir oaluno ter uma visão geral sobre a orientação a objetos e os conceitos relacionados.
  • 4.
  • 5.
    Elementos da POO •Existem alguns elementos que podem existir na programação orientada a objetos. São eles: Classe Classes abstratas Interface Objeto Atributos Métodos
  • 6.
    Classes • É um“modelo/forma” para um objeto. Um objeto por sua vez é uma abstração empobrecida da realidade com o fim de torná-la computável.
  • 7.
    Classe Abstrata • Éuma classe que contem pelo menos um de seus métodos marcado para posterior implementação, ou seja, declarado como abstrato. • Classes abstratas podem ter atributos
  • 8.
    Interface • É umcontrato definido para as classes. • Uma interface não possui atributos ou métodos implementados, tendo somente a assinatura dos métodos que as classes que a realizarem devem implementar.
  • 9.
    Objeto • É umainstância de uma classe. • O objeto aponta para o endereço de memória onde se encontra a instância de uma classe de seu tipo. • Um objeto pode conter: Atributos Métodos
  • 10.
    Atributos • São arepresentação dos estados internos do objeto. Informações que estão associadas ao conceito representado pelo objeto.
  • 11.
    M todosé • Éatravés dos métodos que podemos operar sobre os atributos de uma classe, obtê-los, mudá-los ou ainda efetuar algum calculo ou processo. • Devido ao conceito do encapsulamento, é através de métodos que os objetos se comunicam.
  • 12.
    Caracter sticas deumí Objeto • Alguns conceitos são importantes para entendermos melhor os fundamentos da orientação a objetos. São eles: Encapsulamento; Sobrecarga de método; Herança; Polimorfismo; Sobrescrita de método.
  • 13.
    Encapsulamento • É acaracterística do objeto que indica que somente o objeto que contem o atributo, pode ter acesso a este atributo, ou seja, o objeto é como uma cápsula que contem esses atributos e pela qual não podemos passar diretamente para acessar estes estados.
  • 14.
    Sobrecarga de mtodosé • Esta característica também existem em linguagens estruturadas. Através dela podemos mudar o comportamento de um método, mantendo seu nome igual. No entanto para isto, a assinatura deve mudar, ou seja, o numero de parâmetros ou ainda o tipo destes não deve ser igual ao método o qual se quer sobrecarregar.
  • 15.
    Heran aç • Éa capacidade de uma classe filha utilizar os métodos e atributos da sua superclasse, ou seja, sua classe pai.
  • 16.
    Polimorfismo • É acapacidade de um método mudar de comportamento entre as classes que herdam da mesma classe pai. Podemos através da classe pai acessar as instancias das classes filhas e usar os diferentes métodos.
  • 17.
    Polimorfismo – cont. •Exemplo: Podemos fazer uma classe pai ObjetoCortante que tem um método cortar(). As classes filhas faca e tesoura reimplementam este método, as duas cortam, no entanto cada uma corta de uma forma, ou seja, em cada classe filha o método assume uma forma o que implica dizer que ele tem várias formas (poli morfo) de implementação.
  • 18.
    Sobrescrita de mtodoé • É a capacidade de um método mudar de comportamento de uma classe pai para a classe filha.
  • 19.
  • 20.
    Declarando Classes • Umaclasse é uma abstração da realidade, um modelo pelo qual representamos uma entidade do mundo real.
  • 21.
    • Sintaxe: public class<NomeClasse>{ ... } • Descrição: <NomeClasse> - nome da classe;
  • 22.
    Declarando atributos • Umatributo é utilizado para guardar os estados de um objeto. • Por Exemplo: o atributo nome de uma classe Pessoa é utilizado para guardar esta informação de uma pessoa no mundo real.
  • 23.
    • Sintaxe: <escopo> <Tipo><nomeAtributo>; • Exemplo: private int idade;
  • 24.
    • Descrição: <escopo> -escopo de acesso do atributo; • {public|protected|private} <Tipo> - tipo do atributo; • {int|String|...} <nomeAtributo> - nome do atributo;
  • 25.
    Declarando m todosé •Através dos métodos podemos alterar e ler atributos de um objeto, ou ainda efetuar funções ou procedimentos.
  • 26.
    • Sintaxe: <escopo> <retorno><nomeMetodo>(<Tipo> <nomeParam>,...){ ... } • Exemplo: Public int calcula(int a, int b){ ... }
  • 27.
    • Descrição: <escopo> -escopo de acesso do método; • {public|protected|private} <retorno> - retorno do método; • {int|String|...} <nomeMetodo> - nome do método; <Tipo> - tipo do parâmetro; • {int|String|...} <nomeParam> - nome do parâmetro;
  • 28.
    Instanciando classe • Parautilizar uma classe devemos a instanciar, este processo cria um objeto o qual chamamos de instancia de classe.
  • 29.
    • Sintaxe: <objeto> =new <NomeClasse>(); • Exemplo: nome = new String();
  • 30.
    • Descrição: <objeto> -nome do objeto; <NomeClasse> - nome da classe que gerará a nova instancia;
  • 31.
    Chamando m todosé •Sintaxe: <objeto>.<nomeMetodo>(); • Exemplo: pessoa.toString(); • Descrição: <objeto> - nome objeto; <nomeMetodo> - nome do método a ser invocado
  • 32.
    Exerc cioí • Fazeruma classe onde seja calculada a soma de dois números; • Fazer uma classe onde seja calculada a subtração de dois números; • Fazer uma classe onde seja calculada a multiplicação de dois números; • Fazer uma página onde seja calculada a divisão de dois números;
  • 33.
    Exerc cioí • Implementeum programa que leia os dados de uma pessoa e crie um objeto com estes dados.
  • 34.
    • Implemente umprograma que cadastre CDs, com: Nome do autor Numero de musicas Tempo total de musicas Nome gravadora
  • 35.
    Exerc cioí • Implementeas classes necessárias para um carro, levando em conta que um carro tem: 4 roda 1 motor, que pode ser: • Gasolina • Álcool • Gás • Diesel • Flex • E é fabricado por uma Montadora, que fica em um País.
  • 36.
    Exerc cioí • fazerum programa que calcule a área de figuras geométricas. São estas figuras: Quadrado; Retângulo; Paralelogramo; Triangulo; Circulo;
  • 37.
    Exerc cioí • Implementeum programa que cadastre Aluno, Turma, Professor e Sala. A sala deve conter 1 Turma, 1 Professor. A Turma deve conter até 5 Alunos.
  • 38.
    Exerc cioí • Cadastreos Equipamentos de uma Rede, sendo que estes equipamentos podem ser Roteadores, Switchs, Hubs, Hosts e PrintServers. • A rede pode ter até 10 equipamentos.
  • 39.
    Conclus oã • Atravésdos recursos da orientação a objeto, como a herança, por exemplo, podemos diminuir a complexidade dos programas feitos, assim como aumentar a facilidade de manutenção e o reuso.
  • 40.