浅谈java的接口和C++虚类的相同和不同之处

网友投稿 247 2023-06-26


浅谈java的接口和C++虚类的相同和不同之处

C++虚类相当于java中的抽象类,与接口的不同之处是:

1.一个子类只能继承一个抽象类(虚类),但能实现多个接口

2.一个抽象类可以有构造方法,接口没有构造方法

3.一个抽象类中的方法不一定是抽象方法,即其中的方法可以有实现(有方法体),接口中的方法都是抽象方法,不能有方法体,只有声明

4.一个抽象类可以是public、private、protected、default,接口只有public

5.一个抽象类中的方法可以是public、private、protected、default,接口中的方法只能是public和default

相同之处是:都不能实例化。

补充说明:接口是一类特殊的抽象类,是更抽象的抽象类,你可能这样理解。抽象类是一个不完整的类,接口只是定义了一些功能。打个比方,用抽象类和接口分别描述“狗”,抽象类就是在一般类之前加abstrict说:“猪能用四肢跑,猪和能这样或者那样...”,接口的话就只能说:“猪会跑,用什么跑就http://是子类来讲了”


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java 多线程使用要点分析
下一篇:简单理解Vue条件渲染
相关文章

 发表评论

暂时没有评论,来抢沙发吧~