PROGRAMAÇÃO ORIENTADA A OBJETO
INTRODUÇÃO A POO
POO???
INTRODUÇÃO A POO:
Ah,
PROGRAMAÇÃO
ORIENTADA A
OBJETO
MAS COMO ISSO
FUNCIONA???
DEFINIÇÃO:
POO
É um paradigma para o desenvolvimento de
software que baseia-se na utilização de componentes
individuais (o...
HISTÓRIA
A Programação Orientada ao Objeto (Object-Oriented
Programming) foi concebida há muito tempo atrás (no inicio da ...
CÓDIGO ESTRUTURADO
CÓDIGO ORIENTADO A OBJETO
CLASSE SOMA
CLASSE PRINCIPAL
ALGUMAS LINGUAGENS ORIENTADAS A OBJETOS
CARACTERÍSTICAS DE POO
CLASSE, OBJETOS, ATRIBUTOS E
MÉTODOS
ATRIBUTOS E MÉTODOS
ATRIBUTOS:
São as características próprias daqueles
objetos a qual a classe refere-se.
MÉTODOS:
São as...
CLASSE
public class Pessoa{
String nome = null ;
int idade = 0;
String endereço = null ;
public Pessoa ( String n, int i, ...
public class TestePessoa {
public static void main( String [] args) {
String nome = "Joao" ;
int idade = 30;
String endere...
RESUMINDO :
ABSTRAÇÃO
É utilizada para a definição de entidades do mundo real.
Sendo onde são criadas as classes.
Essas entidades são ...
ENCAPSULAMENTO
• Esconder os detalhes da implementação de um
objeto;
• A capacidade de um objeto possuir uma parte
privada...
MÉTODOS PADRÕES
Getters
Setters
Métodos is
São métodos que permitem a leitura
de atributos da classe, sendo uma
boa prátic...
CÓDIGO
public class Data{
private int ano;
private byte mes;
private byte dia;
public int getAno() {
return ano;
} public ...
else
System .out.println( "Dia invalido" );
} public byte getMes() {
return mes;
} public void ajustarMes( byte m) {
if (m...
AGREGAÇÃO
Agregação
é um tipo de associação onde o todo está relacionado com suas partes.
É representada com o símbolo de ...
CÓDIGO
POLIFORMISMO
• A palavra polimorfismo vem do grego e significa que
pode tomar várias formas. É a capacidade de tipos mais
...
TIPOS DE DADOS
• Ad HOC
• Paramétrico
• Herança
CÓDIGO
Abstract class Animal{
abstract void som();
}
Class Gato extends Animal{
void som(0{
System.out.println(“miau”);
}
...
PROGRAMA PRINCIPAL
public class Principal{
public static void main(String[]args){
Animal a;
Cachorro c = new Gato();
a = g...
SOBRECARGA (OVERLOADING) DE MÉTODOS
public class x {
public void m1( ) {...}
public void m1 ( int p ) {...}
}
//Este métod...
SOBREPOSIÇÃO (OVERRIDING) DE MÉTODOS
public class A {
public void m1( ) {
System.out.print (“Classe A ”)
}
}
public class ...
HERANÇA
Herança é o mecanismo que possibilita a definição de
novas classes a partir de uma já existente, como forma de
reu...
HERANÇA DE ATRIBUTOS E MÉTODOS
HERANÇA DE RELACIONAMENTO
TIPOS DE HERANÇA
HERANÇA ESTRITA
HERANÇA NÃO ESTRITA
as subclasses podem redefinir
ou excluir propriedades
herdadas da sup...
HERANÇA MÚLTIPLA
Herança múltipla
é a possibilidade de se definir uma
subclasse com mais de uma superclasse.
CÓDIGO
CLASSE FORNECEDORPESSOA
CLASSE FORNECEDOREMPRESA
RESUMINDO:
EXERCÍCIOS
1) Implemente uma classe Estudante
com os seguintes atributos:
Nome, nt1, nt2, nt3; e com método
chamado média ...
of 38

Poo (1)

Published on: Mar 4, 2016
Source: www.slideshare.net


Transcripts - Poo (1)

  • 1. PROGRAMAÇÃO ORIENTADA A OBJETO
  • 2. INTRODUÇÃO A POO POO??? INTRODUÇÃO A POO: Ah, PROGRAMAÇÃO ORIENTADA A OBJETO MAS COMO ISSO FUNCIONA???
  • 3. DEFINIÇÃO: POO É um paradigma para o desenvolvimento de software que baseia-se na utilização de componentes individuais (objetos) que colaboram para construir sistemas mais complexos. A colaboração entre os objetos é feita através do envio de mensagens.
  • 4. HISTÓRIA A Programação Orientada ao Objeto (Object-Oriented Programming) foi concebida há muito tempo atrás (no inicio da década de 70), a sua origem vem da linguagem Simula (Simula Language), concebida na Noruega na década de 60, e como o nome indica, foi criada para fazer simulações; entretanto, seu uso alavancou um conceito que até então passava desapercebido pela maioria dos projetistas: a similaridade com o mundo real. A primeira linguagem de programação a implementar os conceitos de OOP foi a linguagem SIMULA-68; em seguida surgiu a linguagem Smalltalk; criada pela Xerox, que pode ser considerada a linguagem que popularizou e incentivou o emprego da OOP. Hoje quando falamos em programação orientada a objeto a primeira linguagem que vem na nossa cabeça e o java da oracle.
  • 5. CÓDIGO ESTRUTURADO
  • 6. CÓDIGO ORIENTADO A OBJETO
  • 7. CLASSE SOMA
  • 8. CLASSE PRINCIPAL
  • 9. ALGUMAS LINGUAGENS ORIENTADAS A OBJETOS
  • 10. CARACTERÍSTICAS DE POO
  • 11. CLASSE, OBJETOS, ATRIBUTOS E MÉTODOS
  • 12. ATRIBUTOS E MÉTODOS ATRIBUTOS: São as características próprias daqueles objetos a qual a classe refere-se. MÉTODOS: São as ações próprias daqueles objetos a qual a classe refere-se. Um método não é nada mais que um procedimento.
  • 13. CLASSE public class Pessoa{ String nome = null ; int idade = 0; String endereço = null ; public Pessoa ( String n, int i, String e){ nome = n; idade = i; endereço = e; } }
  • 14. public class TestePessoa { public static void main( String [] args) { String nome = "Joao" ; int idade = 30; String endereco = "Av Paulista 900" ; Pessoa Breno = new Pessoa(nome, idade, endereco); System .out.println(Breno.nome); System .out.println(Breno.idade); System .out.println(Breno.endereco); } } PROGRAMA PRINCIPAL
  • 15. RESUMINDO :
  • 16. ABSTRAÇÃO É utilizada para a definição de entidades do mundo real. Sendo onde são criadas as classes. Essas entidades são consideradas tudo que é real, tendo como consideração as suas características e ações.
  • 17. ENCAPSULAMENTO • Esconder os detalhes da implementação de um objeto; • A capacidade de um objeto possuir uma parte privada, acessível somente através dos métodos definidos na sua interface pública; • Não se deve permitir acesso direto aos atributos de uma classe;
  • 18. MÉTODOS PADRÕES Getters Setters Métodos is São métodos que permitem a leitura de atributos da classe, sendo uma boa prática cria-los para cada atributo que desejarmos encapsular. São métodos para modificar os valores dos atributos visando protege-los da escrita ou modificação indevida. É possível estabelecer certas normas e controles dentro dos métodos Setters. São métodos utilizados para leitura de atributos booleanos.
  • 19. CÓDIGO public class Data{ private int ano; private byte mes; private byte dia; public int getAno() { return ano; } public void setAno( int a) { if (a > 0){ ano = a; } else System .out.println( "Ano invalido" ); } public byte getDia() { return dia; } public void setDia( byte d) { if (d > 0 && d <= 31 ){ dia = d; }
  • 20. else System .out.println( "Dia invalido" ); } public byte getMes() { return mes; } public void ajustarMes( byte m) { if (m > 0 && m <= 12 ){ mes = m; } else System .out.println( "Mes invalido" ); } public boolean isAnoBissexto(){ if (((ano % 4 == 0) && (ano % 100 != 0)) || (ano % 400 == 0)) return true ; else return false ; } }
  • 21. AGREGAÇÃO Agregação é um tipo de associação onde o todo está relacionado com suas partes. É representada com o símbolo de um diamante junto a classe agregadora.
  • 22. CÓDIGO
  • 23. POLIFORMISMO • A palavra polimorfismo vem do grego e significa que pode tomar várias formas. É a capacidade de tipos mais abstratos representarem tipos mais específicos. • Varias formas de fazer varias coisas.
  • 24. TIPOS DE DADOS • Ad HOC • Paramétrico • Herança
  • 25. CÓDIGO Abstract class Animal{ abstract void som(); } Class Gato extends Animal{ void som(0{ System.out.println(“miau”); } } Class Cachorro extends Animal{ void som(){ System.out.println(“auauaua”); } }
  • 26. PROGRAMA PRINCIPAL public class Principal{ public static void main(String[]args){ Animal a; Cachorro c = new Gato(); a = g; a.som(); // imprime o miau a = c; a.som(); // imprime o auau } }
  • 27. SOBRECARGA (OVERLOADING) DE MÉTODOS public class x { public void m1( ) {...} public void m1 ( int p ) {...} } //Este método é sobrecarregado por que tem nomes iguais mas assinaturas diferentes.
  • 28. SOBREPOSIÇÃO (OVERRIDING) DE MÉTODOS public class A { public void m1( ) { System.out.print (“Classe A ”) } } public class B extends A { public void m1( ){ System.out.print (“Classe B ”) } } // Dois métodos (de classes diferentes) sobrepõem-se se têm a mesma assinatura e (necessariamente) o mesmo tipo de resultado.
  • 29. HERANÇA Herança é o mecanismo que possibilita a definição de novas classes a partir de uma já existente, como forma de reutilizar seus atributos e métodos. Isso é possível mesmo quando não se tem acesso ao código fonte da superclasse.
  • 30. HERANÇA DE ATRIBUTOS E MÉTODOS
  • 31. HERANÇA DE RELACIONAMENTO
  • 32. TIPOS DE HERANÇA HERANÇA ESTRITA HERANÇA NÃO ESTRITA as subclasses podem redefinir ou excluir propriedades herdadas da superclasse. Nesta ele herda mais não pode redefinir nem excluir propriedades.
  • 33. HERANÇA MÚLTIPLA Herança múltipla é a possibilidade de se definir uma subclasse com mais de uma superclasse.
  • 34. CÓDIGO
  • 35. CLASSE FORNECEDORPESSOA
  • 36. CLASSE FORNECEDOREMPRESA
  • 37. RESUMINDO:
  • 38. EXERCÍCIOS 1) Implemente uma classe Estudante com os seguintes atributos: Nome, nt1, nt2, nt3; e com método chamado média onde recebe as três notas como parâmetro e calcula a média. 2) Cria o programa principal para a classe anterior que mande os valores da classe e Mostre o nome do aluno e a sua média;

Related Documents