Características imperativas de Java Tokens Operadores Expressões Conjunto de Caracteres Representações de caracteres: ASCII e EBCDIC Java é escrito em Unicode, um conjunto de caracteres de 16 bits. Os primeiros 256 caracteres de Unicode são o conjunto de caracteres Latin-1. A maioria dos 128 caracteres de Latin-1 é equivalente ao conjunto de caracteres ASCII de 7 bits. Comentários // comentário caracteres de // ao final da linha são ignorados. /* comentário */ caracteres entre /* e */ são ignorados. /** comentário */ caracteres entre /** e */ são ignorados. Comentários a=42; // se 42 é a resposta .... /* Este código é um pouco complicado ... Vou tentar explicá-lo aqui: */ Comentários /** Esta classe torna suas applets melhores. @consulte java.applet.Applet @autor Patrick Naughton @versão 1.2 */ class CoolApplet extends Applet { /** Este metodo recebe dois parametros: @param key e o nome do simbolo a ser armazenado. @param value e aquilo que deve ser armazenado associado a esta tecla. */ void put (String key, Object value { Tokens Tokens de uma linguagem são suas palavras básicas. Espaços em branco não são significativos, exceto para separa tokens. return 0; return 0; return0; Utilize espaço em branco extra apropriadamente para tornar seu código legível Identificadores São usados para nomes de classe, métodos e variáveis. Podem ser qualquer seqüência de caracteres de letras minúsculas, números, caracteres de sublinhado e símbolos de cifrão. Não podem começar com um número. Convenção de nomes de identificadores. Palavras Reservadas abstract boolean break byte case catch char class const continue default do double else extends final finally float for goto if implements import instanceof int interface long native new package private protected public return short static super switch synchronized this throw throws transient try void volatile while Tipos Primitivos boolean char byte short int long float double ou true ou false caractere de 16 bits Unicode 1.1.5 inteiro em C2 com sinal com 8 bits inteiro em C2 com sinal com 16 bits inteiro em C2 com sinal com 32 bits inteiro em C2 com sinal com 64 bits ponto flutuante com 32 bits ponto flutuante com 64 bits Literais Referências a Objetos Único literal de referência a objeto é null. Booleano true e false Inteiros 29 035 0x1D 0x1d Ponto flutuante 18. 1.8e1 .18E2 Literais Caracteres Os caracteres literais aparecem entre aspas simples, como ‘Q’. Strings Strings literais aparecem entre aspas duplas: “javali”. Uma literal string refere-se a um objeto do tipo String. Declarações de Variáveis Uma declaração consiste de modificadores, seguidos por tipos, seguido por uma lista de identificadores. private int x,y; As declarações podem aparecer em qualquer ponto no código-fonte. Campos que são declarados final devem ser inicializados em sua declaração. public static final double PI = 3.14159; Escopo de variável Os blocos de declaração composta são demarcados com duas chaves {} As variáveis são válidas a partir do ponto onde são declaradas até o final da declaração composta. Não se pode declarar uma variável com o mesmo nome de uma de um escopo externo. Operadores Aritméticos + adição - subtração * multiplicação / divisão % resto Aritmética de inteiros A divisão de inteiro trunca zero(7/2 é 3). Divisão por zero é inválido e lança ArithmeticException. Caractere aritmético é inteiro aritmético após char ser implicitamente convertido em int. Aritmética de ponto flutuante Efetuada de forma usual nos, limites da precisão de double e float. As regras para operações de infinitos coincidem com as expectativas da matemática normal. A aritmética de ponto flutuante Java é um subconjunto da norma IEEE-754-1985. Concatenação de Strings Pode-se utilizar + para concatenar duas strings. String sos =“soc”; String socorro = sos + “orro”; socorro += “!”; System.out.println(socorro); Operadores de incremento e decremento Os operadores ++ e -- são os operadores de incremento e decremento. A expressão i++ é equivalente a i=i+1 Os operadores podem ser pré-fixados ou pós-fixados. int i = 16; System.out.println(++i +””+ i++ + “” + i) Operadores condicionais e relacionais > maior que >= maior que ou igual a < menor que <= menor que ou igual a == igual a != diferente de Operador condicional ?: valor = (exprUsr ? valUsr : valPad); if (exprUsr) valor = valUsr; else valor = valPad; Operadores de atribuição O = simples é a forma mais básica de operador de atribuição a = 5; a += 12;