Acções de refactorização

Comandos do menu Refactorizar:

Nome

Descrição

Mudar o nome

Muda o nome do elemento seleccionado e (quando activado) corrige todas as referências aos elementos (também noutros ficheiros).
Disponível: Métodos, parâmetros de método, campos, variáveis locais, tipos, parâmetros de tipos, constantes de enumerações, unidades de compilação, pacotes, pastas de origem e projectos numa selecção de texto processada para um destes tipos de elementos
Atalho: Alt + Shift + R
Opções: Mudar o nome de um tipo permite mudar o nome de variáveis e métodos com nomes semelhantes. Active 'Actualizar variáveis e métodos com nomes semelhantes' na caixa de diálogo Mudar Nome de Tipo. Seleccione 'Configurar...' para configurar a estratégia para nomes de tipos correspondentes.

Mudar o nome de um pacote permite mudar os nomes dos subpacotes respectivos. Active 'Mudar nome de subpacotes' na caixa de diálogo Mudar Nome de Pacote.

Mover

Move os elementos seleccionados e (quando activado) corrige todas as referências aos elementos (também noutros ficheiros).
Disponível: Método de instância (que pode ser movido para uma componente), um ou mais métodos estáticos, campos estáticos, tipos, unidades de compilação, pacotes, pastas de origem e projectos numa selecção de texto processada para um destes tipos de elementos
Atalho: Alt + Shift + V
Opções: Pode utilizar Arrastar & Largar no Explorador de Pacotes para iniciar esta refactorização.
Alterar Assinatura do Método Altera nomes de parâmetros, tipos de parâmetros, ordens dos parâmetros e actualiza todas as referências ao método correspondente . Além disso, os parâmetros podem ser removidos ou adicionados e o tipo de retorno do método, bem como a respectiva visibilidade, podem ser alterados.
Disponível: Métodos ou numa selecção de texto processada para um método
Opções: Active 'Manter método original como delegado para o método alterado' na caixa de diálogo Alterar Assinatura de método para manter o método original.
Extrair Método Cria um novo método que contém as instruções ou a expressão actualmente seleccionadas e substitui a selecção por uma referência ao novo método. Esta função é útil para limpar métodos extensos, agrupados ou demasiado complicados.
Disponível: Pode utilizar  Expandir Selecção para no menuEditar para obter um intervalo de selecção válido.
Atalho: Alt + Shift + M
Extrair Variável Local Cria uma nova variável atribuída à expressão actualmente seleccionada e substitui a selecção por uma referência à nova variável.
Disponível: Selecções de texto processadas para variáveis locais. Pode utilizar  Expandir Selecção para no menuEditar para obter um intervalo de selecção válido.
Atalho: Alt + Shift + L
Extrair Constante Cria um campo final estático da expressão seleccionada e substitui uma referência de campo, e opcionalmente volta a escrever outros locais em que ocorre a mesma expressão.
Disponível: Expressões de constantes ou selecções de texto processadas para expressões de constantes
Incluir Inclui as variáveis locais, métodos ou constantes.
Disponível: Métodos, campos finais estáticos e selecções de texto processadas para métodos, campos finais estáticos ou variáveis locais
Atalho: Alt + Shift + I
Converter Classe Anónima para Imbricada Converte uma classe interna anónima numa classe de membro.
Disponível: Classes internas anónimas
Converter tipo de membro ao nível superior Cria uma nova unidade de compilação Java para o tipo de membro seleccionado, actualizando todas as referências segundo as necessidades. Para tipos de membros não estáticos, é adicionado um campo para permitir acesso à antiga instância delimitadora, caso seja necessário.
Disponível: Tipos de membros ou texto processado para um tipo de membro
Converter Variável Local em Campo Tornar uma variável local num campo. Se a variável for inicializada na criação, a operação move a inicialização para a declaração do novo campo ou para os construtores da classe.
Disponível: Selecções de texto processadas para variáveis locais
Extrair superclasse Extrai uma superclasse comum de um conjunto de tipos descendentes. Os tipos de equivalência seleccionados tornam-se subclasses directas da superclasse extraída depois de aplicar a refactorização.
Disponível: Tipos
Opções: Active 'Utilizar a classe extraída sempre que possível' para utilizar a classe recentemente criada sempre que possível. Consulte Utilizar Supertipo Sempre que Possível.
Extrair Interface Cria uma nova interface com um conjunto de métodos e faz com que a classe seleccionada implemente a interface.
Disponível: Tipos
Opções: Active 'Utilizar o tipo de interface extraído sempre que possível' para utilizar a interface recentemente criada sempre que possível. Consulte Utilizar Supertipo Sempre que Possível.
Utilizar SuperTipo Onde Possível Substitui as ocorrências de um tipo com um dos seus supertipos após identificar todos os locais em que uma substituição é possível.
Disponível: Tipos
Descer Move um conjunto de métodos e campos de uma classe das respectivas subclasses.
Disponível: Um ou mais métodos e campos declarados no mesmo tipo ou numa selecção de texto dentro de um campo ou método
Subir Move um campo ou método para uma superclasse da respectiva classe declarante ou (no caso de métodos) declara o método como abstracto na superclasse.
Disponível: Um ou mais métodos, campos e tipos de membros declarados no mesmo tipo ou numa selecção de texto dentro de um campo, método ou tipo de membro
Introduzir Indirecção Cria um método de indirecção estático que delega para o método seleccionado.
Disponível: Métodos ou numa selecção de texto processada para um método
Opções: Active 'Redireccionar todas as invocações de métodos' para substituir todas as chamadas para o método original pelas chamadas para o método da indirecção.
Introduzir Fábrica Cria um novo método de fábrica, o qual irá chamar um construtor seleccionado e devolver o objecto criado. Todas as referências ao construtor serão substituídas por chamadas ao novo método de fábrica.
Disponível: Declarações de construtor
Introduzir Parâmetros Substitui uma expressão por uma referência a um novo parâmetro do método e actualiza todos os chamadores do método para transmitirem a expressão como o valor desse parâmetro.
Disponível: Selecções de texto processadas para expressões
Condensar Campo Substitui todas as referências a um campo com os métodos getting e setting.
Disponível: Campo ou selecção de texto processada para um campo
Generalizar Tipo Declarado Permite ao utilizador escolher um supertipo do tipo actual da referência. Se for possível alterar em segurança a referência no novo tipo, assim será.
Disponível: Referências e declarações de tipos de campos, variáveis locais e parâmetros com tipos de referências
Inferir Argumentos de Tipo Genérico Substitui as ocorrências de tipos em bruto de tipos genéricos por tipos parametrizados após identificar todos os locais em que a substituição é possível.
Disponível: Projectos, pacotes e tipos
Opções: 'Assumir que clone() devolve uma instância do tipo receptor'. Normalmente, as classes que apresentam o comportamento adequado respeitam esta regra, mas se o utilizador tiver conhecimento da violação da regra por parte do seu código, desmarque a caixa de verificação.

'Deixar argumentos de tipo nÆo restrito em bruto (em vez de inferir <?>)'. Caso não existam restrições aos elementos de, por exemplo, ArrayList a, desmarcar esta caixa de verificação faz com que o Eclipse continue a fornecer um parâmetro do carácter geral, substituindo a referência por ArrayList<?>.
Migrar ficheiro JAR Migra um Ficheiro JAR no caminho de construção de um projecto no seu espaço de trabalho para uma versão mais recente, utilizando, provavelmente, informações sobre refactorizações armazenadas no novo Ficheiro JAR para evitar alterações substanciais.
Disponível: Ficheiros JAR no caminho de construção
Criar Script Cria um script das refactorizações aplicadas no espaço de trabalho. Os scripts de refactorizações podem ser guardados num ficheiro ou copiados para a área de transferência. Consulte Aplicar Script.
Disponível: Sempre
Aplicar Script Aplica um script de refactorização aos projectos no seu espaço de trabalho. Os scripts de refactorizações podem ser transferidos de um ficheiro ou da área de transferência. Consulte Criar Script.
Disponível: Sempre
Histórico Procura o histórico de refactorizações do espaço de trabalho e oferece a opção de eliminar refactorizações do histórico de refactorizações.
Disponível: Sempre

Os comandos de refactorização também estão disponíveis nos menus contextuaiss em muitas vistas e no editor Java.

Conceitos relacionados

Suporte de refactorização

Referência relacionada

Caixas de diálogo de refactorização
Preferências Java