我们能实例化一个抽象类吗?在我的一次面试中,有人问我“我们能否实例化一个抽象类?”我的回答是“不,我们不能”。但是,面试官告诉我“错了,我们可以。”我在这个问题上争论了一下。然后他让我自己在家试试。abstract class my {
public void mymethod() {
System.out.print("Abstract");
}}class poly {
public static void main(String a[]) {
my m = new my() {};
m.mymethod();
}}在这里,我创建类的实例并调用抽象类的方法。有人能给我解释一下吗?我面试的时候真的错了吗?
3 回答

万千封印
TA贡献1891条经验 获得超3个赞
my

一只萌萌小番薯
TA贡献1795条经验 获得超7个赞
为什么 poly
延展 my
?这没用.。 汇编的结果如何?三个档案: my.class
,poly.class
和 poly$1.class
如果我们能够实例化这样的抽象类,我们也可以实例化一个接口.奇怪.。
我们能实例化一个抽象类吗?
超类实例化怎么样?
编辑:让他测试这个
public static final void main(final String[] args) { final my m1 = new my() { }; final my m2 = new my() { }; System.out.println(m1 == m2); System.out.println(m1.getClass().toString()); System.out.println(m2.getClass().toString());}
falseclass my$1class my$2
添加回答
举报
0/150
提交
取消