Java, NetBeans e Orientação a Objetos

  • 9,619 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
9,619
On Slideshare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
0
Comments
4
Likes
9

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Java, NetBeans e Orientação a Objetos João Sávio Ceregatti Longo Campus Ambassador Sun Microsystems 1
  • 2. História do Um pouco de Java Solaris e OpenSolaris Sun Confidential: Internal Only 2
  • 3. “Write once, run anywhere” Sun Confidential: Internal Only 3
  • 4. Java • Não gera um arquivo binário e sim um arquivo com bytecodes • Bytecode é a linguagem da máquina virtual (JVM) • A JVM interpreta os bytecodes e os transforma em linguagem nativa Sun Confidential: Internal Only 4
  • 5. Java Sun Confidential: Internal Only 5
  • 6. Plataforma Java • J2SE • J2ME • J2EE Sun Confidential: Internal Only 6
  • 7. JRE x JDK • JDK - desenvolvimento • JRE - execução Sun Confidential: Internal Only 7
  • 8. Por que usar Java? • Plataforma independente • Mais de 5 bilhões de dispositivos com Java • Mais de 6 milhões de desenvolvedores pelo mundo • Comunidade MUITO GRANDE • Open Source • IDE NetBeans Sun Confidential: Internal Only 8
  • 9. O que é o Netbeans? Sun Confidential: Internal Only 9
  • 10. O que é o NetBeans? • Um IDE multi-linguagens • Uma plataforma para construir aplicações • Uma comunidade Open Source de sucesso • Muito fácil de usar Footnote position, 12 pts. Sun Confidential: Internal Only 10
  • 11. O que é o NetBeans? Tecnologias suportadas... Algumas bem populares ;) Ajax Java EE SOA C/C++ Java ME UML JSF Java SE Web JSP Javascript WSDL CSS PHP XML SQL HTML MIDP JavaDB REST CLDC MySQL CVS CDC PostgreSQL SVN EJB JDBC Rich Client Platform JAX-WS Ant Ruby JSTL E muito mais... Sun Confidential: Internal Only 11
  • 12. O que é o NetBeans? Profiler Sun Confidential: Internal Only 12
  • 13. O que é o NetBeans? Desenvolvimento para dispositivos móveis Suporte para Java ME – CLDC/CDC Sun Wireless Toolkit incluso Desenvolvimento Visual para celulares Novo contrutor de games que suporta MIDP 2.0 Game API Suporte para SVG UI Sun Confidential: Internal Only 13
  • 14. O que é o NetBeans? Desenvolvimento C/C++ Full Edit-Compile-Debug project support and editor Complementação de código, mecanismo de busca de linha de código, etc. Desenvolvimento Remoto Suporte para aplicações empacotadas Trabalha com GCC & Compilador Sun Studio Sun Confidential: Internal Only 14
  • 15. O que é o NetBeans? Novidades > Visual Web Development Desenvolvimento Web Visual com drag 'n drop Inclui componentes AJAX e JavaServer Faces Navegação de páginas Visual Editor CSS Visual Sun Confidential: Internal Only 15
  • 16. O que é o NetBeans? Novidades > O Editor Sun Confidential: Internal Only 16
  • 17. O que é o NetBeans? Novidades > PHP Sun Confidential: Internal Only 17
  • 18. O que é o NetBeans? Novidades > Ruby Suporte para Ruby e Jruby Melohras no editor Complementação de código Suporte para Ruby, RSpec, e arquivos YAML Geração de projetos Rails Agente de instalação Ruby Gems Debugger Suporte à WEBrick, Mongrel, GlassFish Sun Confidential: Internal Only 18
  • 19. O que é o NetBeans? Novidades > Python Sun Confidential: Internal Only 19
  • 20. O que é o NetBeans? Em qual SO posso rodá-lo? Arquivos binários para Solaris, Linux, MS Windows, e Mac OSX 100% Java Apenas baixe e rode em qualquer OS com uma JRE! Sun Confidential: Internal Only 20
  • 21. História do Orientação a Solaris e Objetos OpenSolaris Sun Confidential: Internal Only 21
  • 22. Programação Procedural • Problema da validação do CPF • Repetição de código • Pouca reutilização • Dificuldade na manutenção Sun Confidential: Internal Only 22
  • 23. Programação Orientada a Objetos • Modela o mundo real com classes e objetos • Classe → especificação para os objetos • Objeto → instância de uma classe • Com exemplos é mais fácil!!! Sun Confidential: Internal Only 23
  • 24. Sun Confidential: Internal Only 24
  • 25. Sun Confidential: Internal Only 25
  • 26. Demo demo Sun Confidential: Internal Only 26
  • 27. Criando uma classe O que toda conta bancária tem? • Número • Nome cliente • Saldo • Limite Sun Confidential: Internal Only 27
  • 28. Criando uma classe O que toda conta é capaz de fazer? • Sacar • Depositar • Verificar saldo Sun Confidential: Internal Only 28
  • 29. 1º. Registre-se e baixe o projeto • http://osum.sun.com/group/unesprc • http://osum.sun.com/group/uniararas • http://osum.sun.com/group/asserrc • http://osum.sun.com/group/etebayeux Sun Confidential: Internal Only 29
  • 30. 2º. Download! • Tópico → Palestra: Java e Orientação a Objetos Sun Confidential: Internal Only 30
  • 31. 3º. Abrir o projeto com o NetBeans Sun Confidential: Internal Only 31
  • 32. Implementação em Java public class Conta { int numero; String nome; double saldo; double limite; Sun Confidential: Internal Only 32
  • 33. Implementação em Java public void sacar(int quantidade) { saldo = saldo – quantidade; } public void depositar(int quantidade) { saldo = saldo + quantidade; } } Sun Confidential: Internal Only 33
  • 34. A instanciação • Conta c; • c = new Conta(); Sun Confidential: Internal Only 34
  • 35. Testando a classe Conta public class Main { public static void main(String[] args) { Conta c; c = new Conta(); c.saldo = 10000; c.sacar(1000); System.out.println(“Saldo atual = “ + c.saldo); } } Sun Confidential: Internal Only 35
  • 36. Criando classes 2 tipos de contas: • Básica Limite = 0 • Premium Limite = - 200 Transferência Sun Confidential: Internal Only 36
  • 37. Criando classes • A conta Básica É-UM tipo de Conta • A conta Premium É-UM tipo de Conta • “É-UM” se refere à Herança Sun Confidential: Internal Only 37
  • 38. Implementação em Java public class ContaBasica extends Conta { } public class ContaPremium extends Conta { public void transferir(Conta a, Conta b) { //realiza transferência } } Sun Confidential: Internal Only 38
  • 39. Mas e o limite? • Utilizaremos a sobrescrição • ContaBasica e ContaPremium implementarão o seu próprio método sacar baseado no limite da conta • O método da subclasse sobrescreverá o método da superclasse Sun Confidential: Internal Only 39
  • 40. Mas e o limite? • Na ContaBasica adicione: public void sacar(int quantidade) { /* if (condição com limite = 0) { realiza o saque } */ } Sun Confidential: Internal Only 40
  • 41. Mas e o limite? • Na ContaPremium adicione: public void sacar(int quantidade) { /* if (condição com limite = - 200) { realiza o saque } */ } Sun Confidential: Internal Only 41
  • 42. Juntando tudo public class Main { public static void main(String[] args) { ContaBasica c1 = new ContaBasica(); c1.sacar(100); //limite = 0 ContaPremium c2 = new ContaPremium(); c2.sacar(100); //limite = - 200 } } Sun Confidential: Internal Only 42
  • 43. Sun Confidential: Internal Only 43
  • 44. E agora, quem poderá me ajudar? • Apostila fj-11 Caelum: www.caelum.com.br • Treinamentos Sun → SAI (instruções para acesso em http://osum.sun.com/group/unesprc) • Grupo de Java: www.javanoroeste.com.br E-mail: javanoroeste-subscribe@googlegroups.com • Fóruns: www.guj.com.br, www.javafree.org Sun Confidential: Internal Only 44
  • 45. E depois? • Certificação SCJP • Java para Web – jsp + servlets, JSF • J2ME • ... Sun Confidential: Internal Only 45
  • 46. Obrigado! João Sávio Ceregatti Longo joao.savio@sun.com / joaosavio@gmail.com www.joaosavio.com / http://blogs.sun.com/joaosavio 46