包声明 |
- 添加丢失的包声明或更正包声明
- 将编译单元移至与包声明相对应的包
|
导入 |
- 除去未使用的、不可解析的或不可视的导入
- 对于导入中的问题调用“组织导入”
|
类型 |
- 对于不能解析的类型的引用,创建新的类或接口
- 更改所访问的但是不可视的类型的可视性
- 对于不能解析的类型的引用,重命名为相似类型
- 对于不能解析但却存在于项目中的类型,添加 import 语句
- 对于歧义类型引用,添加显式的 import 语句(同一类型的两个按要求导入)
- 如果类型名与编译单元名不匹配,则重命名类型或重命名编译单元
- 除去未使用的私有类型
|
构造函数 |
- 对于对不能解析的构造函数的引用,创建新的构造函数(创建 this、super 或 new 类)
- 对于参数不匹配的构造函数引用,重新排序或除去自变量
- 将具有构造函数名的方法更改为构造函数(除去返回类型)
- 更改所访问的但是不可视的构造函数的可视性
- 除去未使用的私有构造函数
- 当对隐式缺省构造函数的超调用未定义、不可视或抛出异常时,创建构造函数
- 如果类型包含未实现的方法,则将类型修饰符更改为“抽象”或添加要实现的方法
|
方法 |
- 对于对不能解析的方法的引用,创建新方法
- 对于对不能解析的方法的引用,重命名为相似方法
- 对于参数不匹配的方法引用,重新排序或除去自变量
- 更正所引用的方法的访问(可视性和静态)
- 除去未使用的私有方法
- 对于缺少返回类型或返回类型与返回语句不匹配的方法,更正返回类型
- 如果缺少返回语句,则添加它
- 对于不具有主体的非抽象方法,更改为“抽象”或添加主体
- 对于非抽象类型中的抽象方法,除去方法的“抽象”修饰符或使类型为“抽象”类型
- 对于带有主体的抽象/本机方法,除去抽象或本机修饰符或除去主体
- 如果在构造函数调用内调用方法,则将方法访问更改为“静态”(super 和 this)
- 将方法访问更改为缺省访问以避免仿真方法访问
|
字段和变量 |
- 更正所引用的字段的访问(可视性和静态)
- 对于对不能解析的变量的引用,创建新字段、参数或局部变量
- 对于不能解析的引用,重命名为具有相似名称的变量
- 除去未使用的私有字段
- 更正静态字段的非静态访问
- 对于在外部类型中访问的局部变量,添加“终态”修饰符
- 将字段访问更改为缺省访问以避免仿真方法访问
- 更改局部变量类型以修正类型不匹配
- 初始化尚未初始化的变量
|
异常处理 |
- 除去不需要的 catch 块
- 通过用 try/catch 括起来或周围的 try 块添加 catch 块来处理未捕获的异常
- 通过将 throw 声明添加至父方法或通过将现有 throw 声明一般化来处理未捕获的异常
|
其它 |
- 添加强制转型或更改强制转型以修正类型不匹配
- 对于非 NLS 字符串,打开 NLS 向导或标记为非 NLS
|