This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 201157

Summary: [Change Method Parameter] Change Accessibility - Decrease method visibility enables overloading (behavioral change)
Product: java Reporter: rohitgheyi
Component: RefactoringAssignee: Ralph Ruijs <ralphbenjamin>
Status: RESOLVED WONTFIX    
Severity: normal    
Priority: P4    
Version: 7.0.1   
Hardware: PC   
OS: Mac OS X   
Issue Type: DEFECT Exception Reporter:

Description rohitgheyi 2011-08-20 17:06:07 UTC
NetBeans IDE 7.0.1 (Build 201107282000)

Steps to reproduce: apply Change Method Parameter refactoring on the following program:

public class A {
  public long k(int a) {
    return 1;
  }
  public long test() {
    return new B().k(2);
  }
}
public class B extends A {
  protected long k(long a) {
    return 2;
  }
}

Change Method Parameter refactoring introduces a behavioral change. In the previous program, the method test yields 1. In the following program, the method test yields 2.

public class A {
  private long k(int a) {
    return 1;
  }
  public long test() {
    return new B().k(2);
  }
}
public class B extends A {
  protected long k(long a) {
    return 2;
  }
}
Comment 1 Jan Becicka 2011-08-29 13:42:54 UTC
please evaluate. Thanks
Comment 2 Martin Balin 2016-07-07 07:16:11 UTC
This old bug may not be relevant anymore. If you can still reproduce it in 8.2 development builds please reopen this issue.

Thanks for your cooperation,
NetBeans IDE 8.2 Release Boss