2

拡張するタイプがありますDeleteResourceAction。Eclipse から次の警告が表示されます。

An anonymous type defined in mishanesterenko.changevisualizer.command.handler.DeleteResourceCommandHandler.execute(ExecutionEvent) illegally extends DeleteResourceAction

この警告の理由は何ですか?

UPD

警告を生成する次のコードがあります。

DeleteResourceAction deleteAction = new org.eclipse.ui.actions.DeleteResourceAction(new CustomShellProvider(activeWindow)) {
            @Override
            public IStructuredSelection getStructuredSelection() {
                IStructuredSelection selection = (IStructuredSelection) selectionService.getSelection();
                Object element = selection.getFirstElement();
                if (element instanceof CustomProject) {
                    return new StructuredSelection(((CustomProject) element).getProject());
                }
                return selection;
            }
        };
4

2 に答える 2

2

APIを見ると、DeleteResourceActionサブクラス化を意図していないことがわかります。無名クラスはサブクラスです。

于 2012-05-01T23:13:05.110 に答える
2

DeleteResourceAction javadoc には、クラスを拡張しないという明示的な要求があります。

http://download.eclipse.org/eclipse/downloads/drops/S-3.8M3-201110271800/testresults/reports/org.eclipse.ui.ide_3.8.0.v20111007-1312/org.eclipse.ui.ide/org .eclipse.ui.actions/DeleteResourceAction.java.html

于 2012-05-01T23:13:20.830 に答える