codecamp

Generify重构

Generify 重构旨在将不使用泛型的现有代码转换为泛型识别代码。重构分析现有的代码,并为每个原始类型创建安全且一致的参数类型。

IntelliJ IDEA 尝试生成代码,从 Java 的角度来看,这是尽可能正确的。换句话说,每个上下文都引入了一些类型限制,重构会产生最好的类型,这与现有的上下文不矛盾。

Generify 重构示例

Generify 重构前:

public void method() {
    List list = new LinkedList();
    list.add("string");
}

Generify 重构后:

public void method() {
    List<String> list = new LinkedList<String>();
    list.add("string");
}

生成重构

  1. 在 Project 或 Structure 视图中选择代码转换级别(可以是方法、类、包或目录),也可以将光标放在编辑器中的类或方法名称上。如果您想将泛型应用于单个代码片段,只需在编辑器中选择它。
  2. 在主菜单或选择的上下文菜单上,选择:重构| Generify。将出现 Generify 对话框。
    Generify重构
  3. 定义重构选项。有关详细信息,请参阅对话框说明。
  4. 预览并应用更改。
    Generify重构
IntelliJ IDEA提取变量
IntelliJ IDEA内联
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

IntelliJ IDEA的一般准则

什么是IntelliJ IDEA项目

使用IntelliJ IDEA的意图行为

IntelliJ IDEA使用运行/调试配置

特定于VCS的程序

IntelliJ IDEA语言和特定框架指南

IntelliJ IDEA的数据库和SQL功能

IntelliJ IDEA使用之JavaServer Faces(JSF)

IntelliJ IDEA:分析PHP应用程序的性能

IntelliJ IDEA:调试PHP应用程序

IntelliJ IDEA:适用于PHP的Google App Engine

IntelliJ IDEA更多内容

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }