内联
编辑教程内联
IntelliJ IDEA 提供了以下的内联重构:
内联变量重构用其初始值设定项替换冗余变量用法。此重构与提取变量重构相对应。变量必须在声明中初始化。如果在代码中的某个地方修改了初始值, 则只有在修改之前的实例才会被内联。 | |
---|---|
内联方法重构导致将方法的主体放入其调用者的主体中。您可以选择:内联所有出现的方法,并删除该方法内联只发生一次,并保留该方法。此重构与提取方法相对应。 | |
内联到匿名类重构允许将冗余类替换为其内容。从 Java8 开始,内联的匿名类可以自动转换为 lambda 表达式。 | |
内联构造函数允许压缩一个构造函数链,如果其中一个是另一个的特例情况。 | |
内联 JSP/JSPX 像常规的 Java 内联重构一样工作。 | |
内联超类重构导致将超类的方法推送到它们所在的类中,并删除超类。 |
内联示例
内联变量
内联变量前:
public void method() {
int number = anotherClass.intValue();
int b = a + number;
}
内联变量后:
public void method() {
int b = a + anotherClass.intValue();
}
内联变量前:
public void method() {
AnotherClass.InnerClass aClass = anotherClass.innerClass;
int a = aClass.i;
}
内联变量后:
public void method() {
int a = anotherClass.innerClass.i;
}
内联方法
内联方法前:
public void method() {
int c=add(a,b);
int d=add(a,c);
}
private int add(int a, int b) {
return a+b;
}
内联方法后:
public void method() {
int c= a + b;
int d= a + c;
}
内联方法前:
public ArrayList method() {
String[] strings = {"a","b","c"};
ArrayList list=add(strings);
return list;
}
private ArrayList add(String[] strings) {
ArrayList list = new ArrayList();
for (int i=0; i< strings.length; i++)
{list.add(strings[i]);}
return list;
}
内联方法后:
public ArrayList method() {
String[] strings = {"a","ab","abc"};
ArrayList list1 = new ArrayList();
for (int i=0; i< strings.length; i++)
{list.add(strings[i]);}
ArrayList list = list1;
return list;
}
内联构造函数
内联构造函数前:
public class Class {
public int varInt;
public Class() {
this(0);
}
public Class(int i) {
varInt=i;
}
public void method() {
Class aClass=new Class();
...
}
}
内联构造函数后:
public class Class {
public int varInt;
public Class(int i) {
varInt=i;
}
public void method() {
Class aClass=new Class(0);
...
}
}
内联超类
内联超类前:
public class Bar {
...
int calculations1() { ... }
int calculations2() { ... }
}
class Foo extends Bar {
int someMethod() {
...
if (something > calculations1()) {
...
return calculations2();
}
...
}
}
内联超类后:
class Foo {
...
int someMethod() {
...
if (something > calculations1()) {
...
return calculations2();
}
...
}
int calculations1() {...}
int calculations2() {...}
}
内联到匿名类
内联到匿名类前:
import java.util.*;
public class Main {
public class MyComparator implements Comparator<String> {
@Override
public int compare(String s1, String s2) {
return 0;
}
}
void sort(List<String> scores) {
scores.sort(new MyComparator());
}
}
内联到匿名类前:
import java.util.*;
public class Main {
void sort(List<String> scores) {
scores.sort((s1, s2) -> 0);
}
}
执行内联重构
将插入符号放置在编辑器中的所需符号内联。 | |
---|---|
执行下列操作之一: | |
在主菜单或上下文菜单上,选择:重构丨 内联。 | |
按 Ctrl+Alt+N。 | |
在与所选符号对应的内联对话框中指定内联选项。 | |
预览并应用更改。 |
Mos固件,小电视必刷固件
ES6 教程
Vue.js 教程
JSON 教程
jQuery 教程
HTML 教程
HTML 5 教程
CSS 教程
CSS3 教程
JavaScript 教程
DHTML 教程
JSON在线格式化工具
JS在线运行
JSON解析格式化
jsfiddle中国国内版本
JS代码在线运行
PHP代码在线运行
Java代码在线运行
C语言代码在线运行
C++代码在线运行
Python代码在线运行
Go语言代码在线运行
C#代码在线运行
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。
大家可以一起参与进共编,让零散的知识点帮助更多的人。
X

选择支付方式:


立即支付

¥
9.99
无法付款,请点击这里
金额: 0 元
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟