Correção Rápida

O editor Java oferece correções para problemas encontrados durante a digitação e após a compilação. Para mostrar que sugestões de correção estão disponíveis para um problema ou aviso, uma 'lâmpada' aparece na barra de anotação do editor.
Para tornar visíveis na posição do cursor as sugestões para o problema, clique com o botão esquerdo do mouse na lâmpada ou pressione Ctrl+1 (Editar / Correção Rápida).
Diálogo de seleção Correção Rápida

As seguintes correções rápidas estão disponíveis:

Declaração de Pacote
  • Adicione a declaração de pacote que está faltando ou corrija a declaração de pacote
  • Mova a unidade de compilação para o pacote que corresponde à declaração de pacote
Importações
  • Remova importação não utilizada, que não pode ser resolvida ou que não pode ser vista
  • Chame 'Organizar Importação' para problemas em importações
Tipos
  • Crie uma classe ou interface nova para referências a tipos que não podem ser resolvidos
  • Altere a visibilidade para tipos que são acessados mas não estão visíveis
  • Renomeie com um tipo similar para referências a tipos que não podem ser resolvidos
  • Adicione uma instrução de importação para tipos que não podem ser resolvidos mas que existem no projeto
  • Adicione um instrução de importação explícita para referências de tipo ambíguas (duas importações sob demanda para o mesmo tipo)
  • Se o nome do tipo não for correspondente ao nome da unidade de compilação, renomeie o tipo ou renomeie a unidade de compilação
  • Remova tipos privados não utilizados
Construtores
  • Crie um novo construtor para referências a construtores que não podem ser resolvidos (criação this, da superclasse ou da classe nova)
  • Reorganize ou remova argumentos para referências do construtor incompatíveis com parâmetros
  • Altere o método com nome do construtor para o construtor (remova tipo de retorno)
  • Altere a visibilidade para construtores que são acessados mas não estão visíveis
  • Remova o construtor privado não utilizado
  • Crie o construtor quando a super chamada do construtor padrão implícito estiver indefinida, não estiver visível ou lançar um exceção
  • Se o tipo possuir métodos não implementados, altere o modificador do tipo para 'abstract' ou adicione o método a ser implementado
Métodos
  • Crie um método novo para referências a métodos que não podem ser resolvidos
  • Renomeie com um método similar para referências a métodos que não podem ser resolvidos
  • Reorganize ou remova argumentos para referências de método incompatíveis com parâmetros
  • Corrija o acesso (visibilidade, estático) de métodos referidos
  • Remova métodos privados não utilizados
  • Corrija o tipo de retorno para métodos em que está faltando um tipo de retorno ou em que o tipo de retorno é incompatível com a instrução de retorno
  • Adicionar instrução de retorno, se estiver faltando
  • Para métodos não abstratos sem corpo, altere para 'abstract' ou adicione o corpo
  • Para um método abstrato em um tipo não abstrato, remova o modificador abstrato do método ou torne o tipo abstrato
  • Para um método abstrato/nativo com corpo, remova o modificador abstrato ou nativo ou remova o corpo
  • Altere o acesso do método para 'static' se o método for chamado dentro de uma chamada de construtor (super, this)
  • Altere o acesso do método para acesso padrão para evitar acesso ao método emulado
Campos e variáveis
  • Corrija o acesso (visibilidade, estático) de campos referidos
  • Crie novos campos, parâmetros ou variáveis locais para referências a variáveis que não podem ser resolvidas
  • Renomeie com uma variável de nome similar para referências que não podem ser resolvidas
  • Remova campos privados não utilizados
  • Corrija acesso não estático de campos estático
  • Adicione o modificador 'final' em variáveis locais acessadas em tipos externos
  • Altere o acesso do campo para acesso padrão para evitar acesso ao método emulado
  • Altere o tipo da variável local para corrigir uma incompatibilidade de tipo
  • Inicialize uma variável que não foi inicializada
Tratamento de Exceções
  • Remova o bloco catch desnecessário
  • Trate a exceção não capturada circundando com try/catch ou adicionando um bloco catch em um bloco try circundante
  • Trate a exceção não capturada adicionando uma declaração de lançamento ao método pai ou generalizando um declaração de lançamento existente
Outros
  • Adicione cast ou altere cast para corrigir incompatibilidades de tipos
  • Para cadeias não-NLS, abra o assistente do NLS ou marque como não-NLS

Assistência Rápida são propostas disponíveis mesmo quando não há problema ou aviso: Não há nenhuma lâmpada, portanto, o usuário precisa conhecer a assistência disponível

Assistência Rápida
  • Substitua cláusula catch pela declaração de lançamentos no método pai
  • Transforme uma instrução de expressão em uma atribuição para um novo local ou novo campo
  • Remova instrução 'if', 'for', 'while', 'do' circundante
  • Remova bloco try circundante com um único bloco catch ou finally
  • Remova classe, bloco ou parêntesis anônimos circundantes
  • Renomeação local de um tipo, método ou variável em um modo de 'template' vinculado
  • Circunde linhas selecionadas com gabaritos (''if', 'while'..)

Conceitos relacionados
Editor Java

Referência Relacionada
Ações do JDT

Copyright (c) 2000, 2003 IBM Corporation e outros. Todos os Direitos Reservados.