1

我没有得到内部课程。在 Java 中使用内部类的原因是什么?你能给我一个静态和非静态嵌套类的好例子吗?它的优点/缺点是什么?干杯

4

1 回答 1

2

匿名内部类对于使用很少的方法定义一次性类很有用,例如在实现事件侦听器或比较器时。在这些情况下,一个成熟的类将是矫枉过正,因为它不会在其他任何地方使用。

这是一个实现为匿名内部类的字符串列表的比较器的简单示例:

Collections.sort(myArrayList, new Comparator() {
    public int compare(Object a, Object b) {
        return ((String) a).compareToIgnoreCase((String) b);
    }
});

或者,如果myArrayList碰巧是一个通用列表,它会是这样的:

Collections.sort(myArrayList, new Comparator<String>() {
    @Override
    public int compare(String a, String b) {
        return a.compareToIgnoreCase(b);
    }
});
于 2013-02-10T22:29:43.717 回答