抽象类和接口的区别
来源:互联网 发布:南方寝饰淘宝旗舰店 编辑:程序博客网 时间:2024/06/09 21:30
先讲抽象类
- 抽象类种可以有抽象方法,抽象方法不能有方法体即不出现{},可以没有分号。
- 抽象类中可以有普通方法,普通方法必须有{}。
- 抽象类中的普通方法可以调用抽象方法 。
- 抽象类不能有自己的对象,就是不能被new,但是可以有构造方法,可在子类用super调用。
- 抽象类中定义的方法需要依赖子类来实现
- 抽象类中定义的抽象方法,在子类实现的时候必须实现抽象类中的全部方法
- 只能单继承
再讲接口
- 接口是更为纯粹的抽象类,不能有任何方法的实现,只能有方法的声明。
- 接口也是依赖于子类,“子类”也叫做实现类。
- 实现类必须实现接口中定义的全部方法。
- 接口没有构造函数 所以接口没有对象。
- 接口是多实现的,java语言的特点单继承,多实现的。
- 接口是可以继承接口的,实现类必须实现全部的方法。
- 接口是否可以加abstract关键字,可以也可以没有,没有区别。
- 可以有抽象方法
- 接口中的变量就是常量,只能被static、public、final修饰,不写修饰符,默认的也是这三个。
- interface修饰
共性
- 都不能有自己的实例对象,即不能被new
- 都依赖于子类的实现,子类必须实现接口中的所有方法,必须实现抽象类中的所有抽象方法
区别
- 抽象类,可以有普通方法和执行语句,接口不可以
- 抽象类只能是单继承,接口是多实现
- 接口中定义的变量就是常量,而抽象类中就是变量
- 接口中的变量只能被static、public、final修饰,抽象类都可以修饰。
0 0
- 类的抽象和接口的区别
- 抽象类和抽象方法以及和接口的区别
- 抽象类和接口类的区别
- 抽象类和接口类的区别
- 接口类和抽象类的区别
- 接口类和抽象类的区别
- 接口类和抽象类的区别
- 接口类和抽象类的区别
- 抽象类和接口的区别
- 抽象类和接口的区别
- 接口和抽象类的区别
- 抽象类和接口的区别
- 接口和抽象类的区别
- 抽象类和接口的区别
- 抽象类和接口的区别
- 接口和抽象类的区别
- 抽象类和接口的区别
- 抽象类和接口的区别(转帖)
- HTML5的canvas元素的简单使用
- 网络通信之TCP
- 分布式学习之一:事务
- JAVA实现SFTP上传,下载,删除等方法
- Spring 事务管理高级应用难点剖析
- 抽象类和接口的区别
- 优先队列
- spring 整合 redis
- 使用C实现模拟实现一个shell解释器(一)
- 基于matlab的车道和车道线检测样例
- webrtc的Sqrt()快速计算
- TCP的11种状态
- noi 1805 碎纸机-----搜索
- jq 获取表单未提交数据