SlideShare uma empresa Scribd logo
A c e l e ra d o ra 
JAVA E ORIENTAÇÃO A OBJETOS
AGENDA 
• Motivação 
• JVM 
• OO 
• Hands On 
• Classes 
• Atributos 
• Métodos 
• Exercícios 
2
MOTIVAÇÃO 
Por 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 OBJETOS 
O 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
THANK YOU 
For questions or suggestions: 
! 
jfarah@thoughtworks.com

Mais conteúdo relacionado

PPTX
Introdução ao Neo4j
PPTX
Introdução ao neo4j
PPTX
Criando sistemas de recomendação com neo4j
PPTX
PPTX
Sistemas de recomendações e neo4J na cloud computing
PPTX
Curso de Ruby on Rails
PPT
Apresentação curso de Extensão em Java (UERJ-IME) v1
PPTX
Introducao basica-linguagem-java
Introdução ao Neo4j
Introdução ao neo4j
Criando sistemas de recomendação com neo4j
Sistemas de recomendações e neo4J na cloud computing
Curso de Ruby on Rails
Apresentação curso de Extensão em Java (UERJ-IME) v1
Introducao basica-linguagem-java

Semelhante a Java e Orientação a Objetos - Aula 1 Aceleradora (20)

PPTX
Java e orientação a objetos
PPSX
Java & orientação a objetos
PDF
Aula 02 - Principios da Orientação a Objetos (POO)
PDF
Aula 1 - Introdução a POO
PPTX
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
PDF
2009_2Sem.POOII.Ciencia Aula2 Revisao De Classes E Objetos
PDF
Java e orientação a objetos - aula 01
PPTX
Curso Java Básico - Aula02
PPTX
Java - Visão geral e Exercícios
PDF
Apostila de java na pratica
PPTX
Java: Introdução à Orientação a Objetos
PPTX
Desenvolvendo para WEB com JAVA
PPT
Introdução a programação Orientada a Objeto
PPTX
Aula 1 de Linguagens de Programação ISPGS
PDF
Aula 2 Prof. MSc. Cloves Rocha - PIE - (2018.2) GTI 2 NA - POO
PDF
Java-Introdução.pdf
PPTX
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
PDF
Aula 2 Prof. MSc. Cloves Rocha BV - (2018.2) CCO 2 MA - POO
PPTX
Java e orientação a objetos
Java & orientação a objetos
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 1 - Introdução a POO
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
2009_2Sem.POOII.Ciencia Aula2 Revisao De Classes E Objetos
Java e orientação a objetos - aula 01
Curso Java Básico - Aula02
Java - Visão geral e Exercícios
Apostila de java na pratica
Java: Introdução à Orientação a Objetos
Desenvolvendo para WEB com JAVA
Introdução a programação Orientada a Objeto
Aula 1 de Linguagens de Programação ISPGS
Aula 2 Prof. MSc. Cloves Rocha - PIE - (2018.2) GTI 2 NA - POO
Java-Introdução.pdf
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
Aula 2 Prof. MSc. Cloves Rocha BV - (2018.2) CCO 2 MA - POO
Anúncio

Último (7)

DOC
COMO AUTOMATIZR JOGOS SUPER NINTENDO ATRAVES DA PROGRAMAÇÃO
PPTX
Curso de Windows 11 resumido na prática.pptx
PPTX
Mapeamento de Objeto para Tabela Relacional
DOC
CODIGO PARA AUTOMATIZAR A JOGABILIDADE SUPER MARIO
PDF
apresentacao introducao computacao ead.pdf
PDF
Dos requisitos ao código: como criar código rastreável em PHP
PDF
Evolução em código: algoritmos genéticos com PHP
COMO AUTOMATIZR JOGOS SUPER NINTENDO ATRAVES DA PROGRAMAÇÃO
Curso de Windows 11 resumido na prática.pptx
Mapeamento de Objeto para Tabela Relacional
CODIGO PARA AUTOMATIZAR A JOGABILIDADE SUPER MARIO
apresentacao introducao computacao ead.pdf
Dos requisitos ao código: como criar código rastreável em PHP
Evolução em código: algoritmos genéticos com PHP
Anúncio

Java e Orientação a Objetos - Aula 1 Aceleradora

  • 1. A c e l e ra d o ra JAVA E ORIENTAÇÃO A OBJETOS
  • 2. AGENDA • Motivação • JVM • OO • Hands On • Classes • Atributos • Métodos • Exercícios 2
  • 3. MOTIVAÇÃO Por que eu usaria JAVA? 3
  • 4. 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. 5
  • 6. WRITE ONCE, RUN EVERYWHERE 6
  • 7. 7
  • 8. ESPERA AÍ! JVM? JVM? JRE? JDK? 8
  • 9. 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
  • 10. JAVA E ORIENTAÇÃO A OBJETOS O que é orientação a objetos? 10
  • 11. O QUE É ORIENTAÇÃO A OBJETOS? 11
  • 12. 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. 13
  • 14. LET'S GET OUR HANDS DIRTY • Criar novo projeto: Banco • Criar nova classe: Conta 14
  • 15. O QUE SÃO CLASSES? 15
  • 16. O QUE SÃO ATRIBUTOS? 16
  • 17. O QUE É IMPORTANTE PARA A CLASSE CONTA? • Número da conta • Nome do dono da conta • Saldo • Limite 17
  • 18. O QUE SÃO MÉTODOS? 18
  • 19. 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
  • 20. CUIDADO COM A VISIBILIDADE 20
  • 21. O QUE É IMPORTANTE PARA A CLASSE CONTA? • private String numero • private String nomeDoDono • private double saldo • private double limite 21
  • 22. CUIDADO COM AS RESPONSABILIDADES 22
  • 23. RESPONSABILIDADES! • System.out.println(conta.getDono( )); ou • System.out.println(conta.getDono( ).getNome( )) ! ! ! ! ! ! ! 23
  • 24. AGORA VAMOS CRIAR O DONO • private String nome ! • public String pegaNome( ) 24
  • 26. 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
  • 27. 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
  • 29. 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
  • 30. THANK YOU For questions or suggestions: ! jfarah@thoughtworks.com