注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

融智技术学院

融智技术学院163分站,为广大好友提供更多的帮助

 
 
 

日志

 
 

IT百科——Protocol(协议)  

2014-03-22 15:57:21|  分类: IT百科 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
 

Protocol(协议)

在面向对象的编程中,协议或者接口是让不相关的对象与彼此进行交流的常用方法。这些方法和值的定义是对象商定的,以便合作。

例如,在Java中(协议是术语的接口),在Comparable接口中指定了一个compareTo()方法,它实现了类应该实现的。这意味着一个单独的排序方法,例如,他完成Comparable接口中任意对象的排序,而无需知道任何有关该类的内在性质(除了两个这种对象可以通过compareTo()手段进行比较之外)。

协议的描述如下:

消息是通过对象理解的。

这些消息可以提供参数。

结果的类型是这些消息返回的。

常量是保存修改的为对象的状态。

在特殊情况下,需要由用户去处理对象。

如果对象是完全封装的,那么协议描述的唯一方式是通过其他对象访问该对象。

一些编程语言直接支持协议或者接口(Ada, C#, D, Dart, Delphi, Java, Logtalk, Object Pascal, Objective-C, PHP, Racket, Seed7)。比较旧的语言也有一些特性能够支持接口概念,如抽象基类与C + +中的纯虚函数,或在Perl中的面向对象特性。

尽管Go语言一般认为不是面向对象的语言,它允许方法采用用户定义的类型定义。Go语言有“接口”类型,它兼容任何的类型,此类型支持给定的一系列的方法(该类型不需要明确实现的接口)。空的接口,interface{},兼容任何类型。

需要注意的是函数式编程和分布式编程语言都有一个概念,它也被称为一个协议,但这意味着微妙的不同(换言之,消息交换机制,重点是交换,而不是消息)。该不同是由于函数式编程和面向对象的编程范式的不同假设。具体而言,以下也被视为协议的一部分:

允许消息的序列,

在通讯中,限制放置的任一参与者;

预期效果将出现,作为消息处理。

  评论这张
 
阅读(8)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017