Introdução à Programação Java com a IDE NetBeans /* * Processamento da Informação (2º Trimestre) * 24 de Maio de 2010 * por Rogério Neves */ Projetos com NetBeans IDE • Conjunto de classes de um projeto Códigos fonte Bytecodes gerados Arquivos relacionados Interface Interface PROJETO CÓDIGO FONTE ESTRUTURA DE CÓDIGO CONSOLE (SAÍDA) Interface Interface Interface Interface Código fonte Comentários Blocos de código Blocos de código Blocos de código Saída Declaração de String Fim de linha Tipos de dado primitivos Declaração de variáveis // TIPO IDENTIFICADOR = VALOR_INICIAL; int index = 1.2; boolean retOk = 1; double cincoQuartos = 5 / 4; float ratio = 5.8f; double cincoQuartos = 5.0 / 4.0; boolean flag = true; --int a = 1, b = 2, c = 5; a = b = c; System.out.print(“a= “ + a + “b= “ + b + “c= “ + c); // erro // erro // correto // correto // correto // correto Identificadores (√) (√) (×) (√) (√) (×) (√) (×) (√) Total total123 123total total$ _total total# total_numbers total-numbers acentuação Não utilizar como identificadores • Operadores (* / % + - etc) • Objetos de classe do Java (System, Debug, Integer, Float, String, etc.) • Classes padrão (Math, Scanner, etc.) • Palavras reservadas: – Modificadores – Declaradores – Comandos – Primitivas Palavras reservadas *(Java 1.5) • • • • 53 palavras em java 50 são palavras chave (keywords) 48 são keywords, 2 não utilizadas (goto, const) 3 literais reservadas: true,false,null • Keywords for premitive datatypes: *byte *short *int *long *float *double *char *boolean Keywords for fow control: *if *else *switch *case *default *for *do *while *break *continue *return Keywords for Exception Handling: *try *catch *finally *throw *throws *assert Keywords for modifiers: *public *private *protected *static *abstract *strictfp *final *transient *native *volitle *synchronised Class related key words: *class *interface *package *extends *implements *import Object related key words: *new *instanceOf *super *this Outras: Void Unused keywords: *const *goto • • • • • Operadores Precedência de operadores Exemplo double valor = a + b % d – c * d / b; Equivale à double valor = (a + (b % d)) – ((c * d) / b); Precedência de operadores http://www.uni-bonn.de/~manfear/javaoperators.php Operadores • Operador de atribuição simples = atribuição • Operadores aritméticos + * / % op. adição (também usado para concatenar strings) subtração multiplicação divisão resto • Operadores unários + ++ -! valor positivo valor negativo; nega uma expresão Incrementa com 1 Decrementa com 1 Complemento; inverte o valor lógico de um boleano Operadores lógicos e relacionais Supondo A e B variáveis boleanas, retornam sempre boolean = true / false: A && B AeB A || B A ou B A ^ B Ou exclusivo A == B A Igual a B? (cuidado) A != B A Diferente de B? A >= B A Maior ou Igual a B? A <= B A Menor ou igual a B? A>B A Maior que B? A<B A Menor que B? Operadores Relacionais if (x != xvelho) { System.out.print(“x mudou”); } else { System.out.print(“x não mudou”); } Outros • Ternário (ternary) ?: boolean teste = A>B?A:B; • instanceof if (nome instanceof String) { System.out.print(“é uma String!”); } • Bitwise and Bit Shift Operators ~ << >> >>> & ^ | Unary bitwise complement Signed left shift Signed right shift Unsigned right shift Bitwise AND Bitwise exclusive OR Bitwise inclusive OR Declaração de classes e métodos Publico/Privado Controle de acesso por outras classes static variável/método não-instanciado (global para todos os objetos da classe) public class Exemplo1 { public static double Pi= 3.14159; public static void main() {} public int calculaRaiz(x, y) {} } JavaDocs http://java.sun.com/javase/reference Javadoc