1

このクラスには内部クラスがあります

public class A {
    public class NameComparator implements Comparator<A> {
        @Override
        public int compare(A o1, A o2) {
        return o1.name.compareToIgnoreCase(o2.name);
        }
    }
...
}

そして、別のクラス C (A とは別のパッケージに存在する) からこの NameComparator クラスにアクセスしたいと思います。

例 (C から):

Collections.sort(aArrayList,A.new NameComparator());

これはうまくいきません。内部クラスの NameComparator をクラス A に囲まれないように移動し、ANameComparator のような名前に変更する必要がありますか? これらは非常に密接に関連しているため、この機能をクラス A に含めないのは厄介です。

4

2 に答える 2