社区
C#
帖子详情
接口与抽像类的疑惑
stevenjin
2019-12-08 03:10:16
如果预计要创建组件的多个版本,则创建抽象类。抽象类提供简单易行的方法来控制组件版本。通 过更新基类,所有继承类都随更改自动更新。另一方面,接口一旦创建就不能更改。如果需要接口 的新版本,必须创建一个全新的接口。
关于上面这段话不理解。
1.我抽像类中加了一个方法,继承类并不会自动更新呀!
2.接口中添加新的成员后,继承的类必须添加新的方法。但这换到抽像类中也一样啊,都必须有实现。
...全文
78
2
打赏
收藏
接口与抽像类的疑惑
如果预计要创建组件的多个版本,则创建抽象类。抽象类提供简单易行的方法来控制组件版本。通 过更新基类,所有继承类都随更改自动更新。另一方面,接口一旦创建就不能更改。如果需要接口 的新版本,必须创建一个全新的接口。 关于上面这段话不理解。 1.我抽像类中加了一个方法,继承类并不会自动更新呀! 2.接口中添加新的成员后,继承的类必须添加新的方法。但这换到抽像类中也一样啊,都必须有实现。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
正怒月神
2019-12-09
打赏
举报
回复
这话,在以前是对的。现在就不正确了。 不用太过纠结。 以前的意思是, 因为你在抽象类可以有实现,所以版本更新,那在抽象类,新增一个方法(非抽象的),然后实现。 那么派生类,都继承了。不需要改动。 但是接口上都是抽象的,没有实现的。所以你在原来接口上新增,是具有破坏性的。 第一代的实现类,都要实现它。那么这就很糟糕了。 但是现在 出现了 默认接口实现。 所以这个问题,已经不是问题了。
Eason0807
2019-12-09
打赏
举报
回复
1、你在抽象基类当中更新了一个方法,除非他的继承类中重写了这个方法,否则继承类当然也继承了你更新后的方法,即使继承类重写了基类的方法,一般我们在override重写基类虚方法的时候,都会先调用一下基类的这个方法,比如base.Method(); 2、接口当中只能定义方法,而没有具体实现,所以你更新接口基本都是添加了新的方法、新的属性、或更新某个方法的签名;这就意味着所有继承这个接口的类都需要重写; 最后,抽象类中只有你定义的抽象方法在继承类中必须实现,而抽象类中你可以定义虚方法、普通方法;虚方法继承类 可以直接用,可以override重写,普通方法直接就可以用
解决困惑已久的“
接口
”与“
抽
象”
疑惑
——力荐《php
接口
类
与
抽
象
类
的实际作用》【收藏】
1.php
接口
类
:interface 其实他们的作用很简单,当有很多人一起开发一个项目时,可能都会去调用别人写的一些
类
,那你就会问,我怎么知道他的某个功能的实现方法是怎么命名的呢,这个时候php...
Python设计模式二:
接口
类
和
抽
象
类
(Python
接口
设计)
文章目录系列文章目录前言一、
接口
类
和
抽
象
类
是什么?二、使用步骤1.引入库2.读入数据总结 前言 继第一篇面向对象编程,在文末也提到了interface这个其他OOP语言的语法规则,那让我们开始第二篇
接口
类
和
抽
象
类
...
接口
?
抽
象?
刚学
接口
可能会有这么个
疑惑
?
接口
是不是
抽
象的?存在
抽
象
接口
吗?
接口
中的方法是
抽
象的吗?
接口
中可以有不是
抽
象的方法吗?。。。。 请看下面: 答案:所有的
接口
都是
抽
象的,,
接口
中所有的方法都是
抽
像的! //...
java基础复习------>
抽
象
类
能初始化吗?
1.
抽
象
类
能够初始化吗?答案是:肯定的,
抽
象
类
可以初始化! 2.但是
抽
象
类
不能够直接new 初始化,你不信看下图: 3.所以我们初始化
抽
象
类
,是间接的!接来下介绍两种间接的初始化
抽
象
类
方法 3.1.多态方式 3.2....
Hive代码分析报告(五):
抽
象语法树相关
类
②
上一篇博客中,我们分析到,ASTNode
类
对象的成员数据中可能包含一个ASTOrigin对象,根据项目源代码中ASTNode中与ASTOrigin有关的注释,可以知道这个
类
可能是用来指明ASTNode所源自的对象。 下面来分析一下这个
类
...
C#
110,534
社区成员
642,576
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章