34
Programação Orientada a Objetos

Introdução à Programação Orientada a Objetos em Java

Embed Size (px)

DESCRIPTION

Conteúdo: - Benefícios da Programação Orientada a Objetos - Conceitos básicos e terminologia da Programação Orientada a Objetos # Objeto, Classe, Atributo e Método

Citation preview

Page 1: Introdução à Programação Orientada a Objetos em Java

Programação Orientada a Objetos

Page 2: Introdução à Programação Orientada a Objetos em Java

Este sou eu :)

http://omadson.wordpress.com

@omadsonDesenvolvedor WEB

++ Soluções em Tecnologia

CENTEC

Page 3: Introdução à Programação Orientada a Objetos em Java

● É fácil?● O que eu preciso saber?

Page 4: Introdução à Programação Orientada a Objetos em Java

Até vó toinha sabeprogramar orientado a objetos!

Page 5: Introdução à Programação Orientada a Objetos em Java

● É fácil?● O que eu preciso saber?

Page 6: Introdução à Programação Orientada a Objetos em Java

O que eu preciso Saber?

● Conceitos gerais de programação● Tipos primitivos, entrada e saída de

dados, operadores● Estruturas condicionais e de repetição

Page 7: Introdução à Programação Orientada a Objetos em Java

Eu não prestei atençãonas aulas anteriores, e agora?

Page 8: Introdução à Programação Orientada a Objetos em Java

Simples...

Page 9: Introdução à Programação Orientada a Objetos em Java
Page 10: Introdução à Programação Orientada a Objetos em Java

Preparados?

Page 11: Introdução à Programação Orientada a Objetos em Java

Vamos logo com isso!

Page 12: Introdução à Programação Orientada a Objetos em Java

O que temos para hoje?

Page 13: Introdução à Programação Orientada a Objetos em Java

O que temos para hoje?

● Compreender● Benefícios da Programação Orientada a

Objetos● Conceitos básicos e terminologia da

programação Orientada a Objetos– Objeto, Classe, Atributo, Método

Page 14: Introdução à Programação Orientada a Objetos em Java

Benefícios da tecnologia de Objetos

● Acelerar o tempo de desenvolvimento● Reduzir o tempo de manutenção● Mais fácil de compreender e adaptar● Código de melhor qualidade

Page 15: Introdução à Programação Orientada a Objetos em Java

Programação Orientada a Objetos

● Foco nos dados (Objetos) do sistema, não nas funções

● Estrutura do programa é baseado nos dados não nas funções

● As funções mudam mais do que os dados● Objetos e atividades do mundo real

Page 16: Introdução à Programação Orientada a Objetos em Java

O que é um objeto?

● É o agrupamento dos dados e operações que representam um conceito● Conta Bancária

– número e saldo– creditar e debitar

● Produto (de supermercado)– código, descrição, valor...– atualizar estoque, remarcar preço

Page 17: Introdução à Programação Orientada a Objetos em Java

Objetos

Page 18: Introdução à Programação Orientada a Objetos em Java

Objetos

● Um carro pode ser considerado um objeto● Identidade ('1')● Estado (sua cor, tipo de pneu, etc...)● Comportamento (respostas ao giro do volante, ao

pisar no pedal do freio)● Muitos textos definem um objeto como tendo

apenas duas características: estado e comportamento:● Nesses cados, a identidade é parte do esdado

Page 19: Introdução à Programação Orientada a Objetos em Java

Objeto Conta Bancária

Número Saldo

“123-x“ 354,50

Creditar

Debitar

Page 20: Introdução à Programação Orientada a Objetos em Java

Objeto Conta Bancária

Número Saldo

“123-x“ 354,50

Creditar

Debitar

Número Saldo

“123-x“ 374,50

Creditar

Debitar

creditar(20)

Page 21: Introdução à Programação Orientada a Objetos em Java

Classe

● Agrupamento de objetos que tem propriedades em comuns e realizam as mesmas operações

● Descreve como os objetos daquela classe são estruturados internamente (propriedades e operações)

● Classe é um conceito, o objeto é uma instância deste conceito

Page 22: Introdução à Programação Orientada a Objetos em Java

Classe

● Portanto, podemos ter vários objetos pertencentes a mesma classe● Todos os objetos conta de um banco (um para

cada conta)

ClasseClasse é uma é uma formaforma,,objetosobjetos são os são os bolosbolos

Page 23: Introdução à Programação Orientada a Objetos em Java

Criando uma classe em java

● Clicar com o botão direito no pacote que quer criar a classe > novo > Nova Classe java

Page 24: Introdução à Programação Orientada a Objetos em Java

Criando uma classe em java

● Cada atributo tem um tipo específico que caracteriza as propriedades dos objetos da classe

● double e String denotam os tipos cujos elementos são reais e textos

Page 25: Introdução à Programação Orientada a Objetos em Java

Tipos em Java

● Primitivos● char● int● boolean● double● ...

● Referência● classes (String,

Object, Livro, Conta, etc.)

● arrays

Os elementos de um tipo primitivo são valoresOs elementos de um tipo primitivo são valoresOs elementos de uma classe são objetosOs elementos de uma classe são objetos

Page 26: Introdução à Programação Orientada a Objetos em Java

Strings (String)

● Não é um tipo primitivo e sim uma classe● Literais: “ “, “a“, “DPI\nCapelão Frei

Orlando“● Operadores: + (Concatenação)

– „“Outubro “ + “de “ + 99 = “Outubro de 99“

● Note a concatenação de inteiro para String

● Há uma conversão implicita de todos os tipos primitivos para String.

Page 27: Introdução à Programação Orientada a Objetos em Java

Mais operadores sobre Strings

● Comparação (igualdade) de dois Strings

● Tamanho de uma String a

String a …String b …if (a.equals(b))

String a …int i = a.length(a)

Page 28: Introdução à Programação Orientada a Objetos em Java

Usando String

Page 29: Introdução à Programação Orientada a Objetos em Java

Mais operadores sobre Strings

● Extrair um substring de uma String maior

String a = “Bem Vindo!“;String s = a.substring(0,3);// a = “Bem“// caracteres das posições 0, 1 e 2

A classe String tem mais de 50 métodos:A classe String tem mais de 50 métodos:http://goo.gl/EiqH4http://goo.gl/EiqH4

Page 30: Introdução à Programação Orientada a Objetos em Java

Information Hiding

● A palavra reservada private indica que os atributos só podem ser acessados pelas operações realizadas dentro da classe que foram definidos.

Page 31: Introdução à Programação Orientada a Objetos em Java

Information Hiding em Java

● Java não obriga o uso de private, mas vários autores consideram que isto é uma pré-condição para programação orientada a objetos.

● O bug do ano 2000 e private...● Grande impacto em extensibilidade● Usem private!

Page 32: Introdução à Programação Orientada a Objetos em Java

Estou cansado...

Page 33: Introdução à Programação Orientada a Objetos em Java

Vamos deixar pra terminar no próximo capítulo...

Page 34: Introdução à Programação Orientada a Objetos em Java

Que a força esteja com vocês!