作者:PeterXu 来源:Blog.CSDN Blog: http://blog.csdn.net/peterreg/
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。本文地址:http://blog.csdn.net/peterreg/archive/2008/04/03/2248643.aspx
接口和抽象类是面向对象语言(C++/C#/JAVA等)提供的一种抽象和封装机制,在某种情况下,抽象类和接口之间可以互用,但从语言和技术角度来分析,两者之间既有相同也有不同。两者在软件架构和设计模式中有着相当重要的作用,扮演着重要的角色。
相同:
1.两者都是一种抽象机制,都不能创建具体的对象,都要通过继承来实现它的方法
2. OO的基础,在软件层次和设计模式上有大量的应用
不同:
1. 抽象类描述的是一种"is a"的关系,即派生类是一种基类或抽象类
接口则表示一种契约,表明类具有什么功能,是一种"Can do"的关系
2. 抽象类既可以有没实现的抽象成员,也可以有具体的成员
接口只是一种抽象,没有具体的实现
3. 抽象类不支持回调
接口支持回调
4. 抽象类只支持单重继承
接口支持多重继承,一个类只能派生于一个基类,但可以实现多个接口
在具体的编程中,基于“面向接口编程”的理念,我们一般采用抽象类实现接口,实体类派生于抽象类。
在我的前几篇文章中基本上都可以看到接口的抽象类的应用。
实践中领悟理论是最好的方法!
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=2248643
分享到:
相关推荐
### 2007 IT Salary和技能报告:深入解析影响薪资的关键因素 #### 报告概览 2007年发布的《IT Salary and Skills Report》由Global Knowledge Training LLC进行的一项全球性调研,该报告旨在深入探究IT行业中各...
2019 IT Skills and Salary Report. It is the largest worldwide study of professionals in the technology community and has been conducted annually for over a decade. Throughout the report, you’ll find ...
《线性回归分析在Salary_Data数据集中的应用与解析》 线性回归是统计学中一种广泛应用的预测方法,它通过构建线性模型来研究两个或多个变量之间的关系,特别是因变量(目标变量)与一个或多个自变量(解释变量)...
salary_data.csv 薪水数据报表,用于sklearn机器学习使用,模型选择,数据划分,str数据转换,线形回归等课题学习的素材使用
《深入解析"salary数据集.zip":数据处理的实践与应用》 在现代数据分析领域,数据处理是一项至关重要的技能,它能帮助我们从海量信息中提取有价值的知识,为决策提供支持。今天,我们将深入探讨一个名为"salary...
State of DevOps survey and present it in this special report. In the six years since we launched the first State of DevOps survey, we’ve been able to share a tremendous amount about how DevOps ...
salary.sql
【标题】"salarysystem"揭示了我们正在讨论的是一个与薪资管理相关的系统,可能是用于处理企业内部员工薪资计算、发放和记录的应用程序。这个系统基于Java技术栈,具体使用了Struts2和Hibernate两个框架。 【描述】...
UA MATH 571A R语言回归分析实践 一元回归部分的数据 需要的可以下载下来 自己练习一下R语言做回归的命令 虽然是挺简单的
【IT行业工资概况】 2006年的IT行业工资水平显示出各公司之间的薪酬差异明显,反映出不同领域、地区以及职位的薪资待遇不一。在这一时期,IT公司的工资普遍受到行业景气、公司规模、地理位置等因素的影响。 1. **...
- **earn/pull in a salary**:挣得或获得薪水。这个短语强调了通过工作获取收入的过程。 2. **形容词+salary**: - **basic salary**:基本薪金,指最基础的、不包括任何额外福利或奖金的工资。 - **fixed ...
《 Salary职工工资管理系统详解》 在信息技术领域,开发一个职工工资管理系统是常见的实践项目,尤其适合初学者作为学习编程和数据库管理的入门课题。本文将深入解析“Salary职工工资管理系统”,探讨其背后的C++...
Given that a company's IT spend is, next to salary and benefits, the biggest item in the budget, it's almost mindboggling that accountability in this mission critical is so hard to come by....
标题 "nba_2017_nba_players_with_salary.zip" 暗示这是一个关于2017年NBA球员薪资的数据集,被压缩在ZIP文件中。描述中提到这是一份“球迷福利”,并且提供了链接到一个CSDN博客文章,文章详细介绍了数据集的分析...
在IT领域,数据分析和机器学习是至关重要的组成部分。在这个场景中,我们有三个CSV文件,它们分别是"directory.csv"、"Employee_monthly_salary.csv"和"titanic_train.csv"。这些文件通常用于数据探索、统计分析以及...
【标题】"Simple-Factory-for-Salary.rar_factory" 指的是一个使用简单工厂设计模式来计算薪资的项目,特别适用于Visual C++ 6.0(VC6)环境。这个项目可能包含了一个或多个用于创建薪资计算类实例的工厂类,以适应...
开始:docker-compose -f docker-compose_x86_dev.yml up --build -d 停止:docker-compose -f docker-compose_x86_dev.yml down 迁移前设置环境(更改主机,数据库,密码和登录名)$ env:PostgresConnectString =...
2017年 NBA 球员表现与薪酬关系
Interface_Salary.java
54.查找排除当前最大最小salary之后的员工的平均工资avg_salary.md