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

作者:jingxian 时间:2023-08-05 12:01:51 

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

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

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

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

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

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

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

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

标签:java,虚拟类,接口
0
投稿

猜你喜欢

  • C#中将ListView中数据导出到Excel的实例方法

    2023-12-07 04:00:08
  • Android蓝牙通信聊天实现发送和接受功能

    2022-02-07 21:58:56
  • Android自定义视图中图片的处理

    2023-06-29 12:07:27
  • Java线程的生命周期的详解

    2022-05-18 00:32:08
  • Android实现界面左右滑动切换功能

    2022-08-30 02:00:58
  • Java Hibernate使用SessionFactory创建Session案例详解

    2022-03-04 06:21:28
  • Java 获取网站图片的示例代码

    2022-03-11 14:52:44
  • Android开发教程之如何屏蔽View的重复点击

    2021-05-27 10:06:56
  • 使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务的方法(推荐)

    2022-11-09 11:40:37
  • idea中如何去掉不想commit的文件

    2021-11-09 15:51:30
  • Java开发之spring security实现基于MongoDB的认证功能

    2022-06-29 15:52:32
  • Spring与Spring boot的区别介绍

    2022-02-12 08:55:07
  • Android自定义view实现车载可调整轨迹线

    2022-12-06 11:22:21
  • Java实现爬取百度图片的方法分析

    2023-12-19 23:51:27
  • C# httpwebrequest访问HTTPS错误处理方法

    2021-10-31 02:40:49
  • Java如何利用return结束方法调用

    2022-05-20 19:58:35
  • Java判断对象是否为空(包括null ,"")的方法

    2022-11-26 13:50:25
  • java音乐播放器实现代码

    2022-08-29 08:41:22
  • Spring Boot Logback配置日志过程解析

    2022-12-09 18:08:06
  • Compose状态保存rememberSaveable原理解析

    2021-12-26 10:07:56
  • asp之家 软件编程 m.aspxhome.com