Baixe o app para aproveitar ainda mais
Prévia do material em texto
30/09/2011 1 Lógica de Programação Introdução a Java O Que é o Java? • Linguagem de programação que: – Possui um propósito geral; – Concorrente; – Baseada em classes e orientada a objetos • Foi projetada para ser simples o bastante para que a maioria dos programadores se torne fluente com ela. 30/09/2011 2 O Que é o Java? • Baseada nas linguagens C e C++, mas organizada de maneira diferente. • Em 1991, através do projeto Green da Sun, foi lançada a idéia de uma nova plataforma para computadores portáteis inteligentes. • Surgimento da premissa de portabilidade em sistemas. O Que é o Java? • Inicialmente chamada de Oak, o Java foi criado, mas não tinha uso definido até 1994. • Em 1995, a Sun fez a apresentação formal de sua plataforma, que resultou em grande interesse pelo público em geral. 30/09/2011 3 O Que é o Java? • De 1995 a 1998, houveram diversas atualizações, adições e melhorias na plataforma. • Em 1998, com mais uma leva de mudanças, a família Java passa a ser oficialmente chamada de Java 2. O Que é o Java? • Java 2 é um kit de plataformas: – J2SE – plataforma voltada para aplicações clientes. – J2EE – plataforma para desenvolvimento e execução de aplicações servidoras. – J2ME – plataforma voltada para pequenos dispositivos (aparelhos celulares, televisores...) 30/09/2011 4 Características do Java • Linguagem OO (Orientada a Objetos) • Independente de plataforma • Performance • Sem ponteiros (garbage collector) • Permite multi-threading • Segura, robusta e simples • Tratamento de exceções. Características do Java • Linguagem OO (orientada a objetos) – Com exceção dos tipos primitivos de dados, todo o resto são classes e/ou instâncias. – Atende aos requisitos necessários para ser orientada a objetos: • Oferece mecanismos de abstração; • Encapsulamento; • Herança. 30/09/2011 5 Características do Java • Independente de plataforma – Os programas em java não são compilados para uma plataforma de hardware específica, e sim, para um forma intermediária de código, destinada a Máquina Virtual Java (JVM) – A JVM é um interpretador de bytecodes para a plataforma na qual são executados. Por isso, um mesmo programa pode ser executado em qualquer arquitetura que possua a JVM. Características do Java • Perfomance – Por ser uma linguagem interpretada, a performance de um programa java é razoável, não podendo ser comparada à velocidade de execução de código nativo. – Algumas JVM dispõem de compiladores just in time (JIT), capazes de compilar bytecodes em código nativo durante a carga do programa. 30/09/2011 6 Características do Java • Portabilidade: – Vantagens: • Independe de plataforma; • Importante para aplicações distribuídas, especialmente em redes heterogêneas; • Evita o desenvolvimento de versões do mesmo software específicas para cada arquitetura; – Desvantagens • Linguagem interpretada = queda na performance Características do Java • Sem ponteiros (garbage collector) – Java não permite manipulação direta de endereços de memória, nem que os objetos criados sejam explicitamente destruídos; – Toda manipulação de variáveis e objetos se dá por intermédio de referências. O Java ainda possui um mecanismo automático de gerenciamento de memória, que recupera a memória alocada para objetos não mais referenciados pelo programa. 30/09/2011 7 Características do Java • Permite multi-threading – Java oferece recursos para o desenvolvimento de aplicações capazes de executar múltiplas rotinas concorrentemente, possibilitando sua sincronização. – Cada uma dessas rotinas é como um fluxo de execução independente, usualmente chamado de thread. Características do Java • Segura, robusta e simples. – O java pode evitar qualquer operação no sistema de arquivos da máquina-alvo, minimizando problemas de segurança. – O sistema é flexível ao ponto de determinar diferentes níveis de acesso ao sistema. – A inexistência de ponteiros evita o acesso direto à memória. E que evita os diversos problemas de memória, comuns no C e C++. 30/09/2011 8 Características do Java • Segura, robusta e simples. – Sandbox Model • local onde um programa suspeito é executado com sérias restrições. – Assinatura digital • Se a origem de um programa é de alguém confiável, pode-se evitar o uso da sandbox. – Fortemente tipada: o compilador faz verificações para evitar potenciais erros de incompatibilidade. Características do Java • Tratamento de Exceções – Java institui um método de detecção de erros conhecido como “tratamento de exceções” • Objetivo – tratar erros de software ou hardware • Como? – Separando o código de tratamento de erros do código normal da aplicação – Em tempo de execução, o Java levanta as exceções e o código da aplicação, quando alguma coisa sai errada. 30/09/2011 9 Características do Java • Facilidade de aprendizado – Pequeno número de estruturas de linguagem. – Familiar para programadores C e C++ – Elimina algumas construções mais complicadas: • Desvio incondicional (goto) • Herança múltipla • Ponteiros – Possui um grande número de APIs (Application Programming Interfaces) para desenvolvimento de aplicações específicas. Desenvolvendo em Java 30/09/2011 10 Desenvolvendo em Java Desenvolvendo em Java 30/09/2011 11 Desenvolvendo em Java • Um programa Java pode ser composto de um ou mais arquivos-fonte, denominados unidades de compilação, que podem utilizar: – Declaração de pacotes (package); – Diretivas de importação (import); – Declarações de classes (class); – Declaração de interfaces (interface). Desenvolvendo em Java • Package – se refere a definição de um conjunto de classes pertencentes ao mesmo pacote. • Import – permite indicar quais pacotes de classes serão utilizados. • Class e Interface – permitem a definição de novos tipos e dependências entre os mesmos. 30/09/2011 12 Desenvolvendo em Java • Nomenclaturas – Por convenção, todos os nomes de classes em Java iniciam com uma letra maiúscula, e apresentam a letra inicial de cada palavra que eles incluem em maiúscula. Ex.: class ExemploNomeClasse – O nome de uma classe é um identificador/variável, logo, sua composição consiste em letras, números, _ (underline) e $ (cifrão). Mas não podem ser iniciados por números e não possuem espaços em branco. Desenvolvendo em Java • Tipos Categoria Tipos Tamanho Escala byte 8 bits -128 a 127 Inteiro short 16 bits -32.768 a 32.767 int 32 bits -2.149 a 2.149 long 64 bits -9.218 a 9.218 Ponto flutuante float 32 bits double 64 bits Caractere char Lógico boolean 30/09/2011 13 Desenvolvendo em Java • Variáveis PORTUGOL JAVA x: inteiro int x; y: real float y; • Operadores – Atribuição PORTUGOL JAVA x<-2 x = 2; Desenvolvendo em Java Operador Significado + Soma - Subtração * Multiplicação / Divisão % Módulo (divisão inteira) • Operadores Aritméticos 30/09/2011 14 Desenvolvendo em Java Operador Sintaxe Significado += var += exp; var = var + exp; -= var -= exp; var = var - exp; *= var *= exp; var = var * exp; /= var /= exp; var = var / exp; %= var %= exp; var = var % exp; • Operadores de Atribuição Aritmética • Operadores Relacionais Desenvolvendo em Java Portugol Java Significado > Maior que < Menor que >= Maior ou igual que <= Menor ou igual que = == Igual a <> != Diferente de 30/09/2011 15 • Operadores Lógicos Desenvolvendo em Java Portugol Java Significado E && AND OU || OR ! NOT Desenvolvendo em Java p q p && q V V V V F F F V F F F F p q p || q V V V V F V F V V F F F p !p V F F V • OperadoresLógicos: Tabela Verdade 30/09/2011 16 Entrada e Saída de Dados Funções de Entrada e Saída • INPUT Pseudo-Linguagem Java var: tipo leia(var) tipo var; var=input.nextTipo(); 30/09/2011 17 Funções de Entrada e Saída • Exemplo Pseudo-Linguagem C x: inteiro leia(x) y:real leia(y) int x; x = input.nextInt(); float y; x = input.nextFloat(); Funções de Entrada e Saída • SYSTEM.OUT.PRINT Pseudo-Linguagem C escreva(“ texto ”) escreva(“texto”, var) System.out.print(“ texto“); System.out.print(“texto” + var); 30/09/2011 18 Funções de Entrada e Saída • Exemplo Pseudo-Linguagem C escreva(“ Olá ”) x: inteiro escreva(“Número: ”,x) System.out.print(“ Olá“); int x; System.out.print(“Númer o:” + x); Desenvolvendo em Java • Primeira aplicação public class AloMundo { public static void main(String args[ ]) { System.out.println(“Alo Mundo”); } } 30/09/2011 19 Desenvolvendo em Java PORTUGOL algoritmo “AloMundo” inicio escreva(“Alo Mundo”) fimalgoritmo JAVA public class AloMundo { public static void main(String args [ ]) { System.out.print(“Alo Mundo”); } } Desenvolvendo em Java • Exercício Faça um programa que leia um número e diga o seu sucessor e antecessor. 30/09/2011 20 Desenvolvendo em Java • Exercício Faça um programa que leia 2 números, inverta-os e mostre a troca. Desenvolvendo em Java • Exercício Faça um programa que leia 3 notas e mostre a média.
Compartilhar