Scott-Bing 2018-06-29 08:57 采纳率: 100%
浏览 886
已采纳

Java中,这样算不算对抽象类进行创建对象实例化

 abstract class Inter {
    public abstract void print();
    public abstract void run();
}

class Nonym {
    public static void main(String...args) {
        Inter i = new Inter() {
            public void print() {
                System.out.println("good");
            }

            public void run() {
                System.out.println("run");
            }
        };
        i.print();
        i.run();
    }
}
  • 写回答

8条回答 默认 最新

  • Fatal Error 2018-06-29 09:05
    关注

    实际上你是创建了Inter的子类,父类的类型指向了子类的实例,这事允许的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • m0_37867585 2018-06-29 09:03
    关注

    抽象类智能继承不能直接new

    评论
  • aixiaomeng123 2018-06-29 09:22
    关注

    这种写法是创建了一个Inter的匿名子类对象,抽象类不能创建对象

    评论
  • VIVIAN_WO 2018-06-29 09:28
    关注

    你这个不是实例化,只是实现的抽象类的方法。 如果你把方法去掉,单独去NEW一个看看哈。

    评论
  • sikwangxing 2018-06-29 09:33
    关注

    实际上你是创建了Inter的子类

    评论
  • VIVIAN_WO 2018-06-29 09:33
    关注

    你这个是新建了一个类,名字一样而已。

    评论
  • 缘雨剑 2018-06-29 10:51
    关注

    这样相当于创建了一个继承自Inter的子类的实例

    评论
  • weixin_42524654 2018-07-03 10:38
    关注

    你这种写法是创建了一个匿名内部类,实质是对抽象类创建了一个没有名字的子类,并重写了父类的方法,也就是说是对抽象类的子类对象创建了一个实例,不能算是对抽象类创建对象实例化

    评论
查看更多回答(7条)

报告相同问题?

悬赏问题

  • ¥15 Qt 不小心删除了自带的类,该怎么办
  • ¥15 我需要在PC端 开两个抖店工作台客户端.(语言-java)
  • ¥15 有没有哪位厉害的人可以用C#可视化呀
  • ¥15 可以帮我看看代码哪里错了吗
  • ¥15 设计一个成绩管理系统
  • ¥15 PCL注册的选点等函数如何取消注册
  • ¥15 问一下各位,为什么我用蓝牙直接发送模拟输入的数据,接收端显示乱码呢,米思齐软件上usb串口显示正常的字符串呢?
  • ¥15 Python爬虫程序
  • ¥15 crypto 这种的应该怎么找flag?
  • ¥15 代码已写好,求帮我指出错误,有偿!