百科狗-知识改变命运!
--

接口与类的区别

是丫丫呀1年前 (2023-12-21)阅读数 7#综合百科
文章标签接口面向对象

接口和类都是面向对象编程中的重要概念,它们之间的区别如下:

1、定义方式:接口是由方法声明组成的,而类是由成员变量和成员方法组成的。

2、继承方式:类可以继承另一个类,而接口不能被继承。

3、实现方式:接口可以被类实现,而类不能实现接口。

4、访问权限:类可以被其他类访问,而接口只能被实现它的类访问。

5、作用域:类的成员变量和成员方法的作用域是整个类,而接口的方法的作用域是实现它的类。

6、多态性:类可以实现多个接口,而接口只能被一个类实现。

7、封装性:类可以被多个类访问,而接口只能被一个类访问。

8、泛型:类可以使用泛型,而接口不能使用泛型。

9、接口和抽象类的关系:接口和抽象类都是用于定义类的规范,但是接口是一种更加灵活和通用的规范,可以用于定义任何类型的对象,而抽象类只能用于定义具体的类。

其实不论是面向接口还是面向对象还是面向方面编程,只是设计模式的一种体现,用最简单的话来解释就是:

----------------------------------------------------------------------------

面向对象编程就是一堆对象,通过封装、继承、多态等更加有效的组织程序。

面向接口编程就是一堆接口,通过接口规约对象的属性和方法,是面向对象一部分。

接口与类的区别

来源:(http://blog.sina.com.cn/s/blog_5396eb530100fkla.html) - 关于面向接口、面向对象、面向方面编程的比较区别_simoniu_新浪博客

面向方面编程把业务的主逻辑和次逻辑分开的一种思想。

面向对象不好解释,可以理解为以一切元素都是对象,在设计时以对象为单位,考虑它的属性及方法。设计中采用了封装、继承、抽象的手法

面向接口本身就是面向对象的,无所谓区别,只不过面向接口的好处是耦合性低

面向方面Aspect-Oriented Programming (AOP)就是大名鼎鼎的AOP。其实有点象struts里的拦截器。

举例:假设有在一个应用系统中,有一个共享的数据必须被并发同时访问,首先,将这个数据封装在数据对象中,称为Data Class,同时,将有多个访问类,专门用于在同一时刻访问这同一个数据对象。

为了完成上述并发访问同一资源的功能,需要引入锁Lock的概念,也就是说,某个时刻,当有一个访问类访问这个数据对象时,这个数据对象必须上锁Locked,用完后就立即解锁unLocked,再供其它访问类访问。 这种加锁与解锁的操作可以使用拦截器来实现。而拦截器本身就是面向方面编程的一个具体应用。

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)