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 239453

Summary: [Convert Anonymous to Member] Should provide warning in case inner object will not be accessible
Product: java Reporter: ssazonov
Component: RefactoringAssignee: Ralph Ruijs <ralphbenjamin>
Status: RESOLVED WONTFIX    
Severity: normal    
Priority: P3    
Version: 8.0   
Hardware: PC   
OS: Windows 7   
Issue Type: DEFECT Exception Reporter:
Attachments: Before / After

Description ssazonov 2013-12-13 10:00:39 UTC
Created attachment 143139 [details]
Before / After

1. Create simple java class:

package anonymousToMember;

import java.util.Arrays;
import java.util.Comparator;

public class ClassA {

    public void m1() {

        class Controller {

            int a, b;

            public Controller(int a, int b) {
                this.a = a;
                this.b = b;
            }

            public void doSomething() {
            }
        }

        int[][] pairs = new int[][]{{125, 24}, {658, 5}, {13, 10}};
        Arrays.sort(pairs, new Comparator<int[]>() {
            @Override
            public int compare(int[] a, int[] b) {
                Controller c = new Controller(a[0], b[0]);
                c.doSomething();
                return a[0] - b[0];
            }
        });
    }
}

2. Right click "Comparator" and from pop-up menu select Refactor > Convert Anonymous to Member...

>> Anonymous class conains error

Product Version: NetBeans IDE Dev (Build 201312110002)
Java: 1.7.0_45; Java HotSpot(TM) 64-Bit Server VM 24.45-b08
Runtime: Java(TM) SE Runtime Environment 1.7.0_45-b18
System: Windows 7 version 6.1 running on amd64; Cp1252; en_US (nb)
Comment 1 Martin Balin 2016-07-07 07:19:04 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