Java Básico Primeiros Passos Jeysel Martins Introdução Um pouco de História Em 1991, na Sun Microsystems, foi iniciado o Green Project; Em 1992, nasce o StarSeven. Cria uma linguagem para o StarSevem, chamada Oak. Em 1995, A internet faz o parto da Tecnologia JAVA. Principais Características • Orientação a objeto - Baseado no modelo de Smalltalk; • Recursos de Rede; • Segurança - Pode executar programas via rede com restrições de execução; • Multithreads; • Portabilidade - "write once run anywhere "; Multiplataforma Java Editions Sopa de Letrinhas: J2SE (SDK,JRE) , J2ME, J2EE. Um pouco de Prática E para começar? Java Development Kit; (Download Sun) Editor de Textos (NotePad); Configurar as Variáveis de Ambiente; JAVA_HOME, CLASSPATH, PATH; Nosso primeiro programa Chamando o compilador javac Welcome.java Palavras Reservadas Não podem ser usadas como identificadores. Não só de objetos sobrevive o JAVA Tipos Primitivos Operadores aritméticos Operadores de Comparação Operadores Lógicos Decidindo com Java Decidindo com JAVA Passando Argumentos pela linha de comando!!!! javac Comparador.java c:\> java Comparador 5 8 O 8 e maior Estruturas de Repetição Estruturas de Repetição Orientação a Objetos Propósitos da Orientação a Objetos Melhor visualização do Problema. Velocidade de Desenvolvimento. Melhor qualidade de Software. Cuidado com o Java Estruturado Orientação a Objetos Os conceitos da programação Orientada a Objetos existentes na sintaxe da linguagem java: Artefatos: Pacotes Classes Membros Objetos Características da Orientação a Objetos: Abstração Encapsulamento Herança Polimorfismo Orientação a Objetos O que é um Objeto? Atributos (Características) Métodos (Ações) Objetos Vs Classes Lógica Dinâmica Lógica Estática Objetos trocam mensagens Objeto Objeto Objeto Objeto Objeto Objeto Instanciando um Objeto Criação e Manipulação de Objetos Construindo... Implementando o Contrutor Pilares da Orientação a Objeto Abstração Encapsulamento Herança Polimorfismo Orientação a Objetos Abstração “Abstrair é tirar tudo que é essencial e nada mais.” Aaron Walsh Fazemos isso corriqueiramente na vida Real !!! Orientação a Objetos Encapsulamento Orientação a Objetos Encapsulamento Orientação a Objetos Encapsulamento Orientação a Objetos Herança: Incorporar,adicionar características e/ou ações em um objeto. Orientação a Objetos Herança Exemplo Terminologia Usada SuperClasse – Classe progenitora. SubClasse – Classe Filha. Estende – SubClasse Polimorfismo Polimorfismo – Várias formas. SobreCarga – OverLoad Vertical e Horizontal. SobreEscrita – OverWrite Somente Vertical. Polimorfismo – Sobrecarga Sobrecarga, em linhas gerais, é fazer com que um determinado objeto tenha comportamento diferenciado, ou não, de acordo com a mudança da parametrização dos métodos. Ex: ... Private double salario; public double getSalario(){return salario;} Public double getSalario(float adicional){ return salario + adicional; } ... Polimorfismo - Sobrescrita A sobrescrita, em linhas gerais, vai ser a especialização de determinadas ações, “herdadas” pelas classes mais especializadas. Os métodos herdados são sobrepostos, quando necessário, para que atenda uma demanda diferenciada. Relacionamento “é Um”. Conclusão, o Polimorfismo na visão de OverWrite, será um descritor genérico fazendo chamadas especializadas. Dúvidas?