美文网首页
抽象类和接口的区别

抽象类和接口的区别

作者: freezml | 来源:发表于2017-10-20 11:04 被阅读0次

    抽象类和接口不是一个东西,就算把抽象类中所有的方法全部写成抽象方法,那么依然是抽象类,和接口依然没有任何关系!

    抽象类不能直接 new,换言之,其实抽象类是可以 new的,即new一个抽象类的子类。

    当new一个对象时,过程是这样子的:首先虚拟机会new一个object,然后再new一个这个对象的父类(不论是不是抽象类,即抽象类也是可以new的,只不过不是完整的,缺少的那部分必须由子类来填充),然后才会new一个该类,众多的类组成一个对象,类似于毛毛虫似的东西,抽象类是出现在抽象类中的一环。而接口是由类来实现的,并不会出现在毛毛虫上,当编译后,程序运行时是没有接口的,所以接口中是没有构造器的,

    抽象类中的方法是被继承的,是属于某一类的行为,子类只有两种选择,要或者不要,而接口是来规定方法,实现类中必须有这些方法,表示实现类能做什么。

    相关文章

      网友评论

          本文标题:抽象类和接口的区别

          本文链接:https://www.haomeiwen.com/subject/nwjjittx.html