博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
接口和抽象类
阅读量:3932 次
发布时间:2019-05-23

本文共 793 字,大约阅读时间需要 2 分钟。

什么是抽象类?

抽象类不能创建实例,它只能作为父类被继承抽象类从多个具体类中抽象出来的父类,它具有更高层次的抽象。从多个具有相同特征的类中抽象出一个抽象类,以这个抽象类作为其子类的模板,从而避免了子类的随意性

1、抽象方法只作声明,而不包含实现,可以看成是没有实现体的虚方法

2、抽象类不能被实例化。

3、抽象类可以但不是必须有抽象属性和抽象方法,但是一旦有了抽象方法,就一定要把这个类声明为抽象类

4、具体派生类必须覆盖基类的抽象方法

5、抽象派生类可以覆盖基类的抽象方法,也可以不覆盖如果不覆盖,则其具体派生类必须覆盖它们

6、抽象类重构的结果。

什么是接口?()

1、接口不能被实例化。

2、接口只能包含方法声明

3、接口的成员包括方法属性索引器事件

4、接口不能包含常量、字段(域)、构造函数、析构函数、静态成员。

5、接口设计的结果。

接口和抽象类的区别(语法层面)

1、抽象类可以有构造方法,接口不能有构造方法。

2、抽象类可以有普通成员变量,接口不能有普通成员变量。

3、抽象类可以包含静态方法,接口不能包含静态方法。

4、接口可以被多重实现抽象类只能被单一继承

5、如果抽象类实现接口,则可以把接口方法映射到抽象类中作为抽象方法而不必实现,而在抽象类子类中实现接口中的方法。

接口和抽象类(设计层面)

1、抽象类要被子类继承接口要被类实现

2、接口只能做方法声明抽象类中可以作方法声明,也可以做方法实现

3、接口里定义的变量只能是公共的静态的常量抽象类中的变量是普通变量

4、接口设计的结果,抽象类重构的结果。

5、抽象类接口都是用来抽象具体对象的,但是接口的抽象级别最高

6、抽象类可以有具体的方法和属性接口只能有抽象方法和不可变常量

7、抽象类主要用来抽象类别接口主要用来抽象功能

参考:

转载地址:http://pjqgn.baihongyu.com/

你可能感兴趣的文章
HTML5认知
查看>>
Ubuntu nginx 配置https
查看>>
Thrift 操作 Hbase
查看>>
前端开发概要
查看>>
静态方法应用
查看>>
学习资料
查看>>
技术 +市场必须两手抓
查看>>
服务器抓包
查看>>
vim应用
查看>>
SOA性能管理现状
查看>>
Linux服务器常用命令
查看>>
Linux 检索
查看>>
防止机器注册
查看>>
git操作杂记
查看>>
thrift应用
查看>>
php 按元素值获取最佳元素组合
查看>>
支付服务集成-支付宝
查看>>
使用openssl生成RSA公钥和私钥对
查看>>
Linux常用命令
查看>>
Linux 定时任务应用
查看>>