回复

科幻恐怖迷

2018年10月11日

首先这个题目涉及匿名类,Object o = new Object() {

    public boolean equals(Object obj) {
        return true;    
    }
};
这里创建了一个匿名类,从代码中可以看出,匿名类顾名思义没有名字,的确没名字,该匿名类继承了Object,并且重写了基类的equals方法。

然后把建立的匿名类的对象给了o,此处o是Object类型,因此这里实际上还发生了向上转型,接下来在下面调用了equals方法,这里又运用了多态,由于后期绑定(多态),它会调用子类的equals方法,程序返回true。答案选B。

0 0
回复
暂无回复
查看更多
我要回复