Palavras Chave de Java


Uma visão geral de Java baseada na semântica informal de um agrupamento de suas palavras chave.


Pacotes
package <nome-de-pacote>
Declara o pacote ao qual pertence um arquivo de programas Java.
import <nomes-de-classes>
Inclui no espaço de nomes do programa os <nomes-de-classe>.
Exceções
try {<bloco-de-código>}
catch (<declaração-de-variável-0>) {
    <bloco-tratador-exceção-0> 
}
catch (<declaração-de-variável-1>) {
    <bloco-tratador-exceção-1> 
}
...
catch (<declaração-de-variável-n>) {
    <bloco-tratador-exceção-n> 
}
finally {<bloco-finalizador>}
Executa o <bloco-de-código> e captura qualquer objeto (exceção) porventura levantado durante a execução do <bloco-de-código>. Se houver compatibilidade de tipo entre a classe do object (exceção) levantado e a classe de pelo menos uma das variáveis declaradas na cláusula <declaração-de-variável>, o primeiro <bloco-tratador-exceção> cuja variável correspondente seja compatível com a classe de exceção levantada será executado. O <bloco-finalizador> pode ser opcionalmente declarado, e será sempre executado após a execução do <bloco-tratador-exceção>, qualquer que seja a exceção levantada, e também caso não ocorra exceção.
<assinatura-de-método> throws 
<lista-de-exceções>
Indica que o método declarado cuja assinatura é <assinatura-de-método> pode eventualmente levantar um objeto (exceção) de qualquer das classes de exceção presentes na <lista-de-exceções>.
throw <objeto>
Levanta para o "runtime" o objeto <objeto> como uma exceção
Tipos de Dados Primitivos
boolean (true ou false)
Tipo de dados cujos valores podem ser true ou false.
void
Tipo de dados vazio. Serve para declarar métodos que não retornam valores.
char 
Tipo de dados cujos valores representam caracteres Unicode, com 16 bits.
byte, short, int, long
Tipos de dados inteiros com sinal, armazenados em formato binários na notação de complemento a dois. Os tipos byte, short, int e long tem tamanho de 8, 16, 32 e 64 bits, respectivamente.
float, double
Tipos de dados no formato de ponto flutuante, padrão IEEE 754-1985, com tamanhos de 32 e 64 bits, respectivamente.
Literais
null
Representa um valor referência nulo. Qualquer variável não primitiva (que é uma referência a uma classe, interface ou array) pode conter o valor null.
true e false
Literais que representam os valores possíveis que uma variável boolean pode assumir.
Desvio e Controle de Fluxo
if (<expressão-booleana>) {
<bloco-de-codigo-if> 
} else {
<bloco-de-codigo-else>
}
Computa o valor da <expressão-booleana>. Caso seja verdadeiro executa o <bloco-de-código-if>. Caso <expressão-booleana> seja falsa executa o <bloco-de-código-else>.
switch (<expressão>) {
    case <constante-0> : 
        <bloco-de-código-0>
    case <constante-1> : 
        <bloco-de-código-1>
    ...
    case <constante-n> : 
        <bloco-de-código-n>
    default : 
        <bloco-de-código-default>
}
Avalia o valor da <expressão> e verifica se o valor da <expressão> é igual ao valor de uma das <constante-?> case. Caso positivo desvia a execução do programa para o <bloco-de-código-?> correspondente. Caso negativo desvia a execução do programa para o <bloco-de-código-default>. Para efeito de comparação os valores da <expressão> e <constante-?> são convertidos para int.
for, do, while, break, continue
Comandos para controle de laço, no estilo C/C++.
return <expressão>
Encerra a execução do método corrente e retorna o valor da <expressão> (opcional) ao chamador.
Modificadores de Visibilidade
private 
Aplicado à declaração de um método ou variável, o modificador private torna este campo inacessível fora da classe onde está declarado. Aplicado à declaração de uma classe ou interface torna esta classe ou interface inacessível fora do arquivo onde está declarada.
protected
Aplicado à declaração de um método ou variável, torna este campo inacessível fora do pacote (package) ao qual pertence a classe que o declara. Aplicado à declaração de uma classe ou interface torna esta classe ou interface visível apenas no escopo do pacote onde está declarada.
public
Aplicado à declaração de um método, variável, classe ou interface não faz qualquer restrição de visibilidade a este elemento.
Modificadores Gerais de Métodos e Variáveis
abstract
Aplicado a um método ou classe indica que a implementação completa deste método ou classe é efetuada posteriormente, por uma subclasse.
final
Aplicado à declaração de uma variável indica que esta variável é uma constante. Aplicado à declaração de um método indica que este método não pode ser redefinido em uma subclasse da classe à qual pertence o método. Aplicado à declaração de uma classe ou interface indica que esta classe ou interface não pode ser estendida através de herança.
native
Aplicado á declaração de um método indica que a implementação do método é efetuada em uma linguagem nativa da plataforma onde o código está executando.
static
Aplicado à declaração de uma variável indica que só existe uma ocorrência desta variável, a qual está presente no objeto que representa a informação de 'runtime' da classe na qual a variável está declarada. Fazendo um paralelo com o modelo de Smalltalk, pode se dizer que uma variável static é uma variável de classe.

Aplicado à declaração de um método indica que o objeto ao qual este método se referencia é o objeto que representa a informação de 'runtime' da classe na qual o método está declarado. Fazendo um paralelo com o modelo de Smalltalk, pode se dizer que um método static é um método de classe.

synchronized
Aplicado à declaração de um método indica que a execução deste é precedida pela aquisição de um monitor de bloqueio de acesso. Se o método é também modificado por static o monitor de bloqueio é a classe à qual pertence o método. Se o método é de instância (não estático) o monitor de bloqueio é o objeto sobre o qual o método será executado.
transient
Aplicado à declaração de uma variável indica que o valor contido nesta não tem significado persistente. O processo de serialização não considera o estado desta variável.
volatile
Aplicado à declaração de uma variável indica que o compilador não deve considerar que o valor presente na variável é alterado de modo previsível, por exemplo, no caso de estratégias para otimização de código durante a execução de laços.
Declaração de Classes e Métodos
class <nome-de-classe> 
extends <superclasse> 
implements <lista-de-interfaces>
Declara a classe <nome-de-classe>. Opcionalmente a classe herda todos os seus campos de <superclasse>. Opcionalmente a classe implementa todos os métodos e variáveis declarados em cada uma das interfaces referenciadas na <lista-de-interfaces>.
interface <nome-de-interface> 
extends <lista-de-interfaces>
Declara a interface <nome-de-interface>. Opcionalmente a interface herda todas as declarações de métodos e variáveis presentes em cada uma das interfaces referenciadas na <lista-de-interfaces>
Criação de Objetos
new <invocação-de-método-construtor>
Cria um objeto (instância) cuja classe corresponde ao nome da <invocação-de-método-construtor>. O objeto será criado usando o método construtor cuja assinatura é compatível com os parâmetros passados na <invocação-de-método-construtor>.
Pseudo-Variáveis
super
Se usado dentro do método construtor denota um método construtor declarado na superclasse. Se usado dentro de um método de instância denota uma referência a um método declarado na superclasse.
this
Denota uma referência ao próprio objeto sobre o qual está sendo executado o método.
Teste de Compatibilidade de Tipo
<nome-de-classe-a> instanceof 
<nome-de-classe-b>
Expressão booleana cujo valor é calculado segundo a definição abaixo: se a classe denotada por <nome-de-classe-a> for compatível com a classe denotada por <nome-de-classe-b> a expressão é verdadeira (true), caso contrário é falsa.


COMDEX - Desenvolvimento em Java
Copyright, 1996 Recife Java Team