JDeodorant
JDeodorant copied to clipboard
Move Method refactoring causes access permission errors
Error: InnerClass cannot be resolved to a type Before refactoring:
public class SourceClass {
TargetClass targetClass;
public void methodToBeMoved() {
targetClass.m1();
targetClass.m2();
InnerClass innerClass = new InnerClass();
innerClass.innerMethod();
}
class InnerClass{
void innerMethod(){}
}
}
public class TargetClass {
public void m1() {}
public void m2() {}
}
After refactoring:
class SourceClass1 {
TargetClass1 targetClass;
class InnerClass{
void innerMethod(){}
}
}
class TargetClass1 {
public void m1() {}
public void m2() {}
public void methodToBeMoved() {
m1();
m2();
InnerClass innerClass = new InnerClass();
innerClass.innerMethod();
}
}