Conceitos básicos de
Orientação a Objetos e
Java
Programação I
Curso de Sistemas para Internet
Charles Tiago Jungbeck
jungbeck@gmail.com
Programação I
Roteiro
 Algo que você precisa saber
 O que é Java
 Diferenças entre Java e Pascal
 O que é a orientação a objetos (OO)
 Exemplos práticos de OO no Java
 Pilares da OO
Programação I
Algo que você precisa saber!
Programação I
O que é JAVA?
 Java é uma linguagem de programação e
plataforma computacional – lançada pela
primeira vez pela Sun Microsystems em 1995.
 Java em todos os lugares! (JAVA, 2014)
 89% dos computadores do EUA executam Java
 9 milhões de desenvolvedores no mundo
 3 bilhões de celeluras executam Java
 100% dos Blu-ray Players vêm com Java
 125 milhões de TVs executam o Java
Programação I
Objetivos do Java
 Sistemas de médio e grande porte, onde o time
de desenvolvedores tem várias pessoas.
 Criar aplicações sofisticadas usando diversas
bibliotecas (XML, código de barras, vídeo).
 Permitir o desenvolvimento de aplicações
portáteis de alto desempenho para a mais
ampla variedade de plataformas (JAVA, 2014).
Programação I
Como funciona o Pascal?
 Em uma linguagem de programação como C e
Pascal, temos o seguinte:
Program area;
Var
l, c, a: real;
Begin
...
Windows
Código fonte
em Pascal
Código binário para
determinado SO
compila
 Assim, é necessário compilar uma vez para
Windows, outra para Linux. Esse é o caso de
muitos aplicativos, como Firefox e OpenOffice.
Programação I
Como funciona o Java?
 Máquina virtual Java (JVM) – camada.
Class Carro {
…
}
Carro();
Code:
0: aload_0
1: invokespecial
4: return
compila
JVM Windows
JVM Linux
Código fonte
em java ByteCode java
 Indepedência: tendo a JVM, vários dispositivos
com diferentes SO podem rodar a aplicação
(SIERRA e BATES, 2005, p. 6).
Programação I
Java e OO
 O Java possui a seguinte estrutura de código:
Arquivo de código fonte
Classe
Método1
instruções
Método2
instruções
 O arquivo de código fonte
(.java) contém uma
definição de classe.
 A classe é uma parte de
um programa.
 Uma classe tem um ou
mais métodos.
 Aqui aparecem conceitos de Orientação a
Objetos. O que é isso?
Programação I
Programação Orientada a Objetos
 A POO é um paradigma de programação que
usa os conceitos de Classes e Objetos.
 É uma maneira de programar.
 Os conceitos de POO surgiram em meados de
1960 com a linguagem Simula-68.
 Alan Kay da Xerox, aprimorou esses conceitos
em 1970 com a linguagem SmallTalk.
 Principal vantagem: Reutilização de código
Programação I
Só Java é OO?
 Resposta:
Não.
 Diversas
linguagens de
programação
suportam a
orientação a
objetos.
Programação I
Como funciona a POO?
 Um programa é visto como um conjunto de
objetos que se comunicam.
 A colaboração entre os objetos é feita através
do envio de mensagens.
Objeto1
Objeto3
Objeto2
Objeto5
Objeto4
Programação I
Objetos
 Um objeto é uma construção de software que
encapsula características e comportamentos. É
uma instância de uma classe (SINTES, 2002,
p. 7).
 Usados para representar entidades do mundo
real (carro, pessoa) ou computacional /
abstrato (uma reserva de passagem, um
pagamento).
Programação I
Objetos
 Possuem 3 aspectos principais:
 Características (atributos ou dados)
 Objeto Pessoa: Nome, RG, peso, altura
 Comportamentos (métodos ou operações)
 Objeto Pessoa: andar, correr, dirigirCarro
 Identidade (cada objeto é único)
Programação I
Classes
 Uma classe descreve um conjunto de objetos
que possuem características (atributos) e
comportamentos (métodos) comuns.
 Cada classe funciona como um molde para a
criação de um objeto.
 Os objetos são vistos
como representações
concretas (instâncias)
das classes.
Programação I
Criando uma classe no Java
class Carro {
String modelo;
String cor;
int ano;
void setCor(String cor){
this.cor = cor;
}
String getCor(){
return this.cor;
}
}
Nome da classe
escolhido pelo
programador. Por
padrão, utiliza-se
a primeira letra
em maiúscula
Conjunto de
características
dos objetos da
classe Carro.
Tipo Nome
Métodos ou
operações da
classe.
void setCor(String cor){
this.cor = cor;
}
Tipo de retorno
ou void quando
não há retorno
Nome do
método
Parâmetros
Arquivo Carro.java
Programação I
Método main no Java
 Para que um programa Java execute, é
necessário ter um método chamado main.
 O método main é onde o programa começa a
ser executado (SIERRA e BATES, 2005, p. 6).
 Exemplo:
public class Main {
public static void main(String[] args){
System.out.println("Isso vai aparecer na tela");
}
}
Arquivo Main.java
Programação I
Criando um objeto no Java
 Instância = objeto.
 Um objeto ou instância é criado através do
operador new.
public class Main {
public static void main(String[] args){
Carro meuCarro = new Carro();
meuCarro.setCor("Vermelho");
System.out.println("Cor do carro: "+meuCarro.getCor());
}
}
Arquivo Main.java
Programação I
Pilares da OO
 A Orientação a Objetos baseia-se sobre os
seguintes pilares (SINTES, 2002, p. 22):
Orientação a Objetos
Encapsulamento
Herança
Polimorfismo
Programação I
Pilares da OO
 Encapsulamento
 Os objetos encapsulados funcionam como uma
caixa preta, sabe-se da sua interface externa, mas
não precisa se preocupar com o que acontece
dentro dela (SINTES, 2002, p. 23).
 Níveis de acesso:
 Público (garante o acesso a todos os objetos)
 Protegido (garante o acesso para aquele objeto e
todas as subclasses)
 Privado (garante o acesso somente para aquele
objeto)
Programação I
Pilares da OO
 Herança
 É um mecanismo que permite a você basear uma
nova classe na definição de uma classe
previamente existente. Usando herança, sua nova
classe herda todos os atributos e comportamentos
presentes na classe previamente existente
(SINTES, 2002, p. 73).
 Exemplo:
Pessoa
Funcionário
Professor
Programação I
Pilares da OO
 Polimorfismo
 Ter muitas formas. Em termos de programação,
muitas formas significa que um único nome pode
representar um código diferente, selecionado por
algum mecanismo automático. Assim, o
polimorfismo permite que um único nome expresse
muitos comportamentos diferentes (SINTES, 2002,
p. 122).
 Exemplo: método calcularSalario para um professor
ou funcionário
Programação I
Resumo
 Para programar em Java você precisa saber
construir algoritmos.
 Java: linguagem de programação orientada a
objetos muito usada em todo o mundo.
 Usada para sistemas portáteis de médio e
grande porte.
 Aplicações em Java não dependem da
plataforma utilizada pelo usuário, basta ele ter
a Máquina Virtual Java.
Programação I
Resumo
 Java é uma das principais linguagens de
programação que utiliza o paradigma de OO.
 Paradigma = maneira de programar.
 Objetos que se comunicam através de
mensagens.
 Objeto: real ou abstrato que possui atributos e
operações.
 Classe = molde para a criação do objeto.
Programação I
Resumo
 OO baseia-se sobre 3 pilares:
Encapsulamento, Herança e Polimorfismo.
Programação I
Atividade
 1. Identifique alguns atributos para as classes:
Livro, Funcionário, Aluno e Celular.
 2. Qual a diferença entre Atributos e Métodos?
 3. De acordo com o exemplo visto (Carro.java),
crie no Bloco de Notas uma classe chamada
Livro e especifique seus atributos e métodos.
Programação I
Referencias
BARNES, D. J.; KÖLLING M. Programação orientada a objetos com Java. 4ª ed. São
Paulo: Grupo Pearson, 2009.
CAELUM. Java e Orientação a Objetos. Disponível em:
<http://www.caelum.com.br/apostila-java-orientacao-objetos/>. Acesso em: 20 maio
2014.
DEITEL, H. M.; DEITEL, P. J. Java – Como programar. 4ª ed. Porto Alegre: Bookman,
2003.
JAVA. Obtenha informações sobre a tecnologia Java. Disponível em:
<www.java.com/pt_BR/about>. Acesso em: 20 maio 2014.
SIERRA, K.; BATES, B. Use a Cabeça! Java. 2ª ed. Rio de Janeiro: Alta Books, 2005.
SINTES, A. Aprenda programação orientada a objetos em 21 dias. 1ª ed. São Paulo:
Makron Books, 2002.

Conceitos Básicos de OO e Java

  • 1.
    Conceitos básicos de Orientaçãoa Objetos e Java Programação I Curso de Sistemas para Internet Charles Tiago Jungbeck jungbeck@gmail.com
  • 2.
    Programação I Roteiro  Algoque você precisa saber  O que é Java  Diferenças entre Java e Pascal  O que é a orientação a objetos (OO)  Exemplos práticos de OO no Java  Pilares da OO
  • 3.
    Programação I Algo quevocê precisa saber!
  • 4.
    Programação I O queé JAVA?  Java é uma linguagem de programação e plataforma computacional – lançada pela primeira vez pela Sun Microsystems em 1995.  Java em todos os lugares! (JAVA, 2014)  89% dos computadores do EUA executam Java  9 milhões de desenvolvedores no mundo  3 bilhões de celeluras executam Java  100% dos Blu-ray Players vêm com Java  125 milhões de TVs executam o Java
  • 5.
    Programação I Objetivos doJava  Sistemas de médio e grande porte, onde o time de desenvolvedores tem várias pessoas.  Criar aplicações sofisticadas usando diversas bibliotecas (XML, código de barras, vídeo).  Permitir o desenvolvimento de aplicações portáteis de alto desempenho para a mais ampla variedade de plataformas (JAVA, 2014).
  • 6.
    Programação I Como funcionao Pascal?  Em uma linguagem de programação como C e Pascal, temos o seguinte: Program area; Var l, c, a: real; Begin ... Windows Código fonte em Pascal Código binário para determinado SO compila  Assim, é necessário compilar uma vez para Windows, outra para Linux. Esse é o caso de muitos aplicativos, como Firefox e OpenOffice.
  • 7.
    Programação I Como funcionao Java?  Máquina virtual Java (JVM) – camada. Class Carro { … } Carro(); Code: 0: aload_0 1: invokespecial 4: return compila JVM Windows JVM Linux Código fonte em java ByteCode java  Indepedência: tendo a JVM, vários dispositivos com diferentes SO podem rodar a aplicação (SIERRA e BATES, 2005, p. 6).
  • 8.
    Programação I Java eOO  O Java possui a seguinte estrutura de código: Arquivo de código fonte Classe Método1 instruções Método2 instruções  O arquivo de código fonte (.java) contém uma definição de classe.  A classe é uma parte de um programa.  Uma classe tem um ou mais métodos.  Aqui aparecem conceitos de Orientação a Objetos. O que é isso?
  • 9.
    Programação I Programação Orientadaa Objetos  A POO é um paradigma de programação que usa os conceitos de Classes e Objetos.  É uma maneira de programar.  Os conceitos de POO surgiram em meados de 1960 com a linguagem Simula-68.  Alan Kay da Xerox, aprimorou esses conceitos em 1970 com a linguagem SmallTalk.  Principal vantagem: Reutilização de código
  • 10.
    Programação I Só Javaé OO?  Resposta: Não.  Diversas linguagens de programação suportam a orientação a objetos.
  • 11.
    Programação I Como funcionaa POO?  Um programa é visto como um conjunto de objetos que se comunicam.  A colaboração entre os objetos é feita através do envio de mensagens. Objeto1 Objeto3 Objeto2 Objeto5 Objeto4
  • 12.
    Programação I Objetos  Umobjeto é uma construção de software que encapsula características e comportamentos. É uma instância de uma classe (SINTES, 2002, p. 7).  Usados para representar entidades do mundo real (carro, pessoa) ou computacional / abstrato (uma reserva de passagem, um pagamento).
  • 13.
    Programação I Objetos  Possuem3 aspectos principais:  Características (atributos ou dados)  Objeto Pessoa: Nome, RG, peso, altura  Comportamentos (métodos ou operações)  Objeto Pessoa: andar, correr, dirigirCarro  Identidade (cada objeto é único)
  • 14.
    Programação I Classes  Umaclasse descreve um conjunto de objetos que possuem características (atributos) e comportamentos (métodos) comuns.  Cada classe funciona como um molde para a criação de um objeto.  Os objetos são vistos como representações concretas (instâncias) das classes.
  • 15.
    Programação I Criando umaclasse no Java class Carro { String modelo; String cor; int ano; void setCor(String cor){ this.cor = cor; } String getCor(){ return this.cor; } } Nome da classe escolhido pelo programador. Por padrão, utiliza-se a primeira letra em maiúscula Conjunto de características dos objetos da classe Carro. Tipo Nome Métodos ou operações da classe. void setCor(String cor){ this.cor = cor; } Tipo de retorno ou void quando não há retorno Nome do método Parâmetros Arquivo Carro.java
  • 16.
    Programação I Método mainno Java  Para que um programa Java execute, é necessário ter um método chamado main.  O método main é onde o programa começa a ser executado (SIERRA e BATES, 2005, p. 6).  Exemplo: public class Main { public static void main(String[] args){ System.out.println("Isso vai aparecer na tela"); } } Arquivo Main.java
  • 17.
    Programação I Criando umobjeto no Java  Instância = objeto.  Um objeto ou instância é criado através do operador new. public class Main { public static void main(String[] args){ Carro meuCarro = new Carro(); meuCarro.setCor("Vermelho"); System.out.println("Cor do carro: "+meuCarro.getCor()); } } Arquivo Main.java
  • 18.
    Programação I Pilares daOO  A Orientação a Objetos baseia-se sobre os seguintes pilares (SINTES, 2002, p. 22): Orientação a Objetos Encapsulamento Herança Polimorfismo
  • 19.
    Programação I Pilares daOO  Encapsulamento  Os objetos encapsulados funcionam como uma caixa preta, sabe-se da sua interface externa, mas não precisa se preocupar com o que acontece dentro dela (SINTES, 2002, p. 23).  Níveis de acesso:  Público (garante o acesso a todos os objetos)  Protegido (garante o acesso para aquele objeto e todas as subclasses)  Privado (garante o acesso somente para aquele objeto)
  • 20.
    Programação I Pilares daOO  Herança  É um mecanismo que permite a você basear uma nova classe na definição de uma classe previamente existente. Usando herança, sua nova classe herda todos os atributos e comportamentos presentes na classe previamente existente (SINTES, 2002, p. 73).  Exemplo: Pessoa Funcionário Professor
  • 21.
    Programação I Pilares daOO  Polimorfismo  Ter muitas formas. Em termos de programação, muitas formas significa que um único nome pode representar um código diferente, selecionado por algum mecanismo automático. Assim, o polimorfismo permite que um único nome expresse muitos comportamentos diferentes (SINTES, 2002, p. 122).  Exemplo: método calcularSalario para um professor ou funcionário
  • 22.
    Programação I Resumo  Paraprogramar em Java você precisa saber construir algoritmos.  Java: linguagem de programação orientada a objetos muito usada em todo o mundo.  Usada para sistemas portáteis de médio e grande porte.  Aplicações em Java não dependem da plataforma utilizada pelo usuário, basta ele ter a Máquina Virtual Java.
  • 23.
    Programação I Resumo  Javaé uma das principais linguagens de programação que utiliza o paradigma de OO.  Paradigma = maneira de programar.  Objetos que se comunicam através de mensagens.  Objeto: real ou abstrato que possui atributos e operações.  Classe = molde para a criação do objeto.
  • 24.
    Programação I Resumo  OObaseia-se sobre 3 pilares: Encapsulamento, Herança e Polimorfismo.
  • 25.
    Programação I Atividade  1.Identifique alguns atributos para as classes: Livro, Funcionário, Aluno e Celular.  2. Qual a diferença entre Atributos e Métodos?  3. De acordo com o exemplo visto (Carro.java), crie no Bloco de Notas uma classe chamada Livro e especifique seus atributos e métodos.
  • 26.
    Programação I Referencias BARNES, D.J.; KÖLLING M. Programação orientada a objetos com Java. 4ª ed. São Paulo: Grupo Pearson, 2009. CAELUM. Java e Orientação a Objetos. Disponível em: <http://www.caelum.com.br/apostila-java-orientacao-objetos/>. Acesso em: 20 maio 2014. DEITEL, H. M.; DEITEL, P. J. Java – Como programar. 4ª ed. Porto Alegre: Bookman, 2003. JAVA. Obtenha informações sobre a tecnologia Java. Disponível em: <www.java.com/pt_BR/about>. Acesso em: 20 maio 2014. SIERRA, K.; BATES, B. Use a Cabeça! Java. 2ª ed. Rio de Janeiro: Alta Books, 2005. SINTES, A. Aprenda programação orientada a objetos em 21 dias. 1ª ed. São Paulo: Makron Books, 2002.