Post on 02-Jul-2015
description
A c e l e r a d o r a
JAVA E ORIENTAÇÃO A OBJETOS
AGENDA
• Motivação
• JVM
• OO
• Hands On
• Classes
• Atributos
• Métodos
• Exercícios
2
MOTIVAÇÃOPor que eu usaria JAVA?
3
HISTÓRIA E PLATAFORMA
Quais eram os maiores problemas na década de 1990?
• ponteiros?
• gerenciamento de memória?
• organização?
• falta de bibliotecas?
• ter que rescrever todo o código ao mudar de sistema operacional?
• custo financeiro de usar a tecnologia?
4
5
WRITE ONCE, RUN EVERYWHERE
6
7
ESPERA AÍ! JVM?JVM? JRE? JDK?
8
JVM? JRE? JDK?
• JVM = Java Virtual Machine
• JRE = Java Runtime Environment, ambiente de execução Java, formado pela JVM, bibliotecas, tudo que você precisa para executar uma aplicação JAVA
• JDK = Java Development Kit: Nós, desenvolvedores, faremos o download do JDK do Java SE (Standard Edition). Ele é formado pela JRE somado a ferramentas, como o compilador.
9
JAVA E ORIENTAÇÃO A OBJETOSO que é orientação a objetos?
10
O QUE É ORIENTAÇÃO A OBJETOS?
11
ORIENTAÇÃO A OBJETOS
• Abstração de objetos do mundo real para o mundo da programação
• Orientação a Objetos vai te ajudar em muito em se organizar e escrever menos, além de concentrar as responsabilidades nos pontos certos, flexibilizando sua aplicação, encapsulando a lógica de negócios.
12
13
LET'S GET OUR HANDS DIRTY
• Criar novo projeto: Banco
• Criar nova classe: Conta
14
O QUE SÃO CLASSES?
15
O QUE SÃO ATRIBUTOS?
16
O QUE É IMPORTANTE PARA A CLASSE CONTA?
• Número da conta
• Nome do dono da conta
• Saldo
• Limite
17
O QUE SÃO MÉTODOS?
18
QUAL O COMPORTAMENTO DA CLASSE CONTA?
• public int saque(int quantidade)
• public void deposita(int quantidade)
• public String pegaNomeDoDono( )
• public String pegaSaldo( )
• public void transfere(Conta destino, double quantidade)
19
CUIDADO COM A VISIBILIDADE
20
O QUE É IMPORTANTE PARA A CLASSE CONTA?
• private String numero
• private String nomeDoDono
• private double saldo
• private double limite
21
CUIDADO COM AS RESPONSABILIDADES
22
RESPONSABILIDADES!
• System.out.println(conta.getDono( )); ou
• System.out.println(conta.getDono( ).getNome( ))
!
!
!
!
!
!
!
23
AGORA VAMOS CRIAR O DONO
• private String nome
!
• public String pegaNome( )
24
EXERCÍCIO 1
25
SISTEMA PARA GERENCIAR FUNCIONÁRIOS DO BANCO
• 1 - modele um funcionário. Ele deve ter o nome do funcionário (String), o departamento onde trabalha (String), seu salário (double), a data de entrada no banco (String) e seu RG (String).
26
SISTEMA PARA GERENCIAR FUNCIONÁRIOS DO BANCO
• Crie um método recebeAumento(double quantidade) que aumenta o salário do funcionário de acordo com o parâmetro passado como argumento.
!
• Crie também o método calculaGanhoAnual( ), que não recebe parâmetro nenhum e devolve o valor do salário multiplicado por 12.
27
EXERCÍCIO 2
28
SISTEMA PARA GERENCIAR FUNCIONÁRIOS DO BANCO
• Crie uma classe Banco. O Banco tem um nome, cnpj e uma referência a um array de “Funcionario”.
!
• O Banco deve ter um método adiciona, que recebe uma referência a “Funcionario” como argumento e guarda esse funcionário no array
29