Aula - 1º Ano - Émile Durkheim - Um dos clássicos da sociologia
Conceitos Básicos de OO e Java
1. Conceitos básicos de
Orientação a Objetos e
Java
Programação I
Curso de Sistemas para Internet
Charles Tiago Jungbeck
jungbeck@gmail.com
2. 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
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 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).
6. 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.
7. 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).
8. 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?
9. 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
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 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
12. 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).
13. 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)
14. 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.
15. 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
16. 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
17. 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
18. 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
19. 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)
20. 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
21. 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
22. 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.
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.
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.