社区
C#
帖子详情
问一个关于接口的问题...
liqi_good
2007-04-03 02:51:14
本人从学到用C#已经有半年多了,其中自己做个几个项目,但发现,我做过的所有项目里,都没用用到过接口这个概念..
所以现在想问一下各位,就是想知道接口应该"何时用,为何用"?
...全文
215
10
打赏
收藏
问一个关于接口的问题...
本人从学到用C#已经有半年多了,其中自己做个几个项目,但发现,我做过的所有项目里,都没用用到过接口这个概念.. 所以现在想问一下各位,就是想知道接口应该"何时用,为何用"?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
photoplan
2007-10-06
打赏
举报
回复
举个小例子,
string[] arr = ...;
arr.Contains("abc"); 这个有错误
((IList)arr).Contains("abc"); 这个可以
这个也算吧,哈哈。
小玩笑楼主别介意。
spkl1
2007-04-03
打赏
举报
回复
mark
我也认真学习```
ristona
2007-04-03
打赏
举报
回复
INTERFACE主要还是要从设计来理解,不能完全从代码层面来理解.
一般使用接口有两个目的,一,解耦,二,扩展.其实没有接口,在不考虑扩展的前提,完全可以没有接口.
因此,楼主先不要关键,慢慢来,先熟悉OO的基本概念,然后再慢慢接触一些设计方面的知识后,你就会自然而然的理解和应用.
PS:千万不要为了做接口而接口,那样通常会误用,反而不利于扩展了.
liqi_good
2007-04-03
打赏
举报
回复
似乎有一点点开窍了...希望能再看到一些高手说一下..
namhyuk
2007-04-03
打赏
举报
回复
应该说不是何时用,为何用的问题了,而是不得不用,没法不用。
接口还有虚函数都一种运行时动态绑定的意思。也就是说写代码的时候根本没法确定到时会执行什么。你可以从这个角度开始考虑问题。什么情况下,我是根本无法预测会执行哪个?但我可以预先把运行逻辑写好,是不是会有这种情况???
再想想,这种情况是不是太多太多了?
一个非常典型的例子就是数据绑定。仔细了解一下的话,你会发现要实现数据绑定这样的功能,没有接口是根本无法实现的。这就是不得不用。
adodotnet
2007-04-03
打赏
举报
回复
用不上的地方也确实没必要用。
但确实一开始编C#程序,就算是最简单的,那后面也是有好多的接口参与着,不是吗?
笼统的讲,我想用同一种方式使用不同派系的功能时用接口。
IMyInterface interface = class1;
interface.Go(); //执行Class1的Go
下一时刻 interface = class2;
inteface.Go(); //执行Class2的Go
再下一个时刻...
一个interface就可以执行各种类的方法。我甚至可以在代码里先
interface.Go(); 没必要预先知道我要执行谁的Go
只要哪个在实现了IMyInterface,还有接口定义的Go方法,那么我就能执行。我预先不管你是哪家来的,只要你实现了IMyInterface,那你就能被我调用。
。。。。
JavaK
2007-04-03
打赏
举报
回复
adodotnet() ( ) 信誉:100 Blog
已经说得很好了,我再说一下,接口做用主要一点就是用来规范程序。另一个比较灵活的适用就是 可以这样:ITest {void Hello();} <]--- Test1{public void Hello{Console.WriteLine("test1");}}, Test2{public void Hello {Console.WriteLine("test2")}} (Test1和Test2分别inherit ITest)
现有一个
ClassA {
public ITest GetTest(ITest itest) {
...
return itest;
}
}
...
ClassA classA = new ClassA();
ITest itest = classA.GetTest(new Test1());
itest.Hello();
itest = classA.GetTest(new Test2());
itest.Hello();
楼主试试吧,这样就可以很灵活的写代码了。
liqi_good
2007-04-03
打赏
举报
回复
所以我现在就是想请教,什么时候该用接口,为什么要在这时用接口?
希望各位把自己的开发经验告诉一下...谢谢了...
he_8134
2007-04-03
打赏
举报
回复
做的项目越小越不会用到~~~就像一些工程图纸一样~~~你捏个泥巴用不着先画图纸~~~
liqi_good
2007-04-03
打赏
举报
回复
我知道接口有这个属性..但我现在想问的是:"何时用,为何用"?
不过好是谢谢LS的..
基于Laravel8.x实现
接口
签名认证与权限认证
一、在基于Laravel8.x实现API
接口
签名认证系统课程里: 我将带领大家基于laravel 8.x来开发用户认证系统与
接口
签名验证系统以解决API
接口
请求中的安全
问
题
,我将带领同学们认识Laravel用户认证的两大核心要素,守卫者与数据提供者,并从源码层面分析用户认证中涉及到的核心概念,通过基于
接口
签名的认证逻辑,带领同学们实现自定义守卫者以及签名认证器,实现基于签名认证的用户登陆逻辑,并基于该守卫者实现
一个
接口
签名认证中间件对
接口
请求进行拦截处理。 在实战过程中,涉及到的核心概念我们会在源码层面对其原理进行阐述,以帮助同学们更好地掌握这些知识。 在完成上述功能后,我们会带领大家将我们实现的基于
接口
签名认证的用户认证与
接口
认证逻辑封装成Laravel扩展包,从而使得我们的代码与Laravel核心框架解耦,以保证功能上的独立性和可复用性。 二、在基于Laravel 7.x的后台权限验证API课程里: 以后台权限验证API的开发为载体,带领大家使用Laravel 7.x进行权限扩展包的开发,你将学习到如下知识: 1、如何使用laravel编写Restful api
接口
2、如何使用composer进行项目依赖管理,laravel常用扩展的安装与使用,如dingo/api 以及repository 3、如何使用jwt进行实现后台用户认证机制 4、学习使用laravel扩展包的形式进行后台权限验证API的开发 5、如何编写Seeders帮助我们在新系统里实现数据的初始化 6、理解和使用Laravel核心概念和面向
接口
的编程思想 三、这两套课程分别解决的是API
接口
请求的安全
问
题
与
接口
权限
问
题
java设计
一个
形状shape_编程定义
一个
图形
接口
Shape, 内含2个抽象方法 get... JAVA编程题:编
一个
程序包含
一个
接口
shape(该接......
导航:网站首页 >编程定义
一个
图形
接口
Shape, 内含2个抽象方法 get... JAVA编程题:编
一个
程序包含
一个
接口
shape(该接...编程定义
一个
图形
接口
Shape, 内含2个抽象方法 get... JAVA编程题:编
一个
程序包含
一个
接口
shape(该接...相关
问
题
:匿名网友:楼主你好具体代码如下:/*Shap
接口
*/public interface Shap {pub...
计算机主板和硬盘连接吗,我的计算机主板只有
一个
SATA2
接口
. 如何连接硬盘和光驱? -...
这非常简单,只需连接CD-ROM中的“跳线”并拔下硬盘上的“跳线”即可!将光缆一端连接到光盘驱动器,另一端连接到硬盘.有两个IDE
接口
. 如果您的硬盘和光盘驱动器是IDE
接口
,则可以购买IDE TO SATA
接口
卡!有两个IDE
接口
. 如果您的硬盘和光盘驱动器是IDE
接口
,则可以购买IDE TO SATA
接口
卡!它可以添加到任何界面,只需在启动设置中选择默认硬盘作为固态驱动器即可.无需对系统进行任...
面试时经常被
问
到的 -
接口
依赖怎么处理
接口
依赖 面试的时候经常会被
问
到在
接口
自动化测试过程中怎么处理
接口
依赖? 首先我们要搞清楚什么是
接口
依赖。 1. 什么是
接口
依赖
接口
依赖指的是,在
接口
测试的过程中
一个
接口
的测试经常需要依赖另
一个
或多个
接口
成功请求后的返回数据。 那怎么处理呢?不同场景的处理方式有所不同。 2.
接口
依赖的多种场景 2.1 单
接口
测试 在单
接口
测试时
接口
依赖有两种场景。 在整个
接口
用例测试前的依赖 例如:需要登录后的
接口
,需要在测试前先访
问
登录
接口
获取对应的鉴权凭证,例如 token。 在
接口
的每
一个
..
小程序地理位置
接口
wx.getLocation申请审核解决方法(详细说明及避坑)
小程序地理位置获取当前的地理位置、速度
接口
wx.getLocation申请审核解决方法(详细说明及避坑)
C#
110,537
社区成员
642,576
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章