接口是方法声明的集合,以使不相关的对象能够彼此通信。

接口的基础是方法的接口与方法的实现之间的区别。方法的接口包括调用该方法必须的所有信息,包括方法名、所有参数和返回类型。方法的实现不进包括接口信息,还包括执行方法的行为的可执行语句。接口定义只包括方法接口,实现接口的所有类负责定义方法实现。

另一种描述接口的方法是:接口定义了数据类型,就像类一样。因此,接口可以用作类型注释,也像类一样。作为数据类型,接口还可以与需要指定数据类型的运算符一起使用,如 is 和 as 运算符。但是与类不同的是,接口不可以实例化。这个区别使很多程序员认为接口是抽象的数据类型,认为类是具体的数据类型。

定义接口

  • 接口定义的结构类似于类定义的结构,不过接口只能包含方法,不能包含方法体。
  • 接口不能包含变量和常量,但可以包含 getter 和 setter.
  • 需要使用 interface 关键字来定义接口。

在类中实现接口

在AS 3.0中,类是唯一可实现接口的语言元素。在类声明中使用 Implements 关键字可实现一个或多个接口。
在实现接口的类中,实现的方法必须:

  • 使用 public 访问控制标识符。
  • 使用与接口方法相同的名称。
  • 拥有相同数量的参数,每一个参数的数据类型都要与接口方法参数的数据类型相匹配。
  • 使用相同的返回类型。

ActionScript 中的接口相关推荐

  1. C++中的接口(抽象类)

    1.Cpp中的接口(抽象类) 接口描述了类的行为和功能,而不需要完成类的特定实现.接口是使用抽象类来实现的,抽象类与数据抽象互不混淆,数据抽象是一个把实现细节与相关的数据分离开的概念.如果类中至少有一 ...

  2. Java中实现接口与继承的区别

    ** Java中实现接口与继承的区别 ** 首先,先来了解一下什么是接口和继承.接口一般是使用interface来定义的.接口定义同类的定义类似,分为接口的声明和接口体,其中接口体由常量定义和方法定义 ...

  3. Objective-C 入门(七)协议 protocol(JAVA中的接口)

    Objective-C 入门(七)协议 protocol(JAVA中的接口) 接口的作用想必大家都比较了解 OV中的 protocol 相比接口作用相似 语法稍有不同 1.先来看声明一个协议 在创建文 ...

  4. Android中Parcelable接口用法

    --  通过writeToParcel将你的对象映射成Parcel对象,再通过createFromParcel将Parcel对象映射成你的对象.也可以将Parcel看成是一个流,通过writeToPa ...

  5. Java中的接口命名[关闭]

    本文翻译自:Interface naming in Java [closed] Most OO languages prefix their interface names with a capita ...

  6. 初步解读Golang中的接口相关编写方法

    初步解读Golang中的接口相关编写方法 概述如果说goroutine和channel是Go并发的两大基石,那么接口是Go语言编程中数据类型的关键.在Go语言的实际编程中,几乎所有的数据结构都围绕接口 ...

  7. Java6.0中Comparable接口与Comparator接口详解

    Java6.0中Comparable接口与Comparator接口详解 说到现在,读者应该对Comparable接口有了大概的了解,但是为什么又要有一个Comparator接口呢?难道Java的开发者 ...

  8. C# 类中继承接口的属性

    在开发中面对接口编程,有时需要将属性放到接口中,但是在类中又要如何去继承接口的属性呢? 开始的时候,我以为只要继承了接口,就可以将属性拿来用了.代码如下: public interface IA {i ...

  9. java中接口什么时候用_我什么时候应该在java中使用接口?

    在Java中精确使用接口的一个很好的例子将是理想的,适用于任何特定的规则. 看看丹以前所有的问题,他似乎只是逐字逐句地张贴家庭作业/考试问题. 令人惊讶的是,这些不是考试题或其他-今天才找到这个网站, ...

最新文章

  1. 北理工计算机学院专业确认,北理工 2021 强基计划报名增加确认环节,限报 1 校 1 专业...
  2. Python for虚幻引擎编辑器工具脚本学习教程
  3. boost::test模块测试参数化测试
  4. Git删除分支/恢复分支
  5. android 开发 矩形截屏插件,Android 上如何实现矩形区域截屏
  6. Elastic Stack 安装
  7. destoon 自定义session丢失
  8. HTTP 1.1状态代码
  9. java项目实现服务器监控,Java实现服务器状态监控
  10. python selenium+pywin32 实现网页另存为
  11. 在线抽签html,抽签网页板代码
  12. Matlab 批量读取,处理及保存图片
  13. 搜索引擎优化(SEO) 基础常识
  14. HTAP的下一步?SoTP初探(上):从“大”数据到“小”而“宽”数据
  15. php-redis常用操作
  16. 计算机组成原理基本概念,《计算机组成原理》基本概念.doc
  17. vs2019,C#,MySQL创建图书管理系统3(管理员相关页面的布局和设计实现,图书显示,图书添加)
  18. php guzzlehttp,PHP 使用 Guzzle 发送 HTTP 请求
  19. 图像(层)正常混合模式详解(上)
  20. Hadoop的fsck工具

热门文章

  1. 微信小程序之用户授权
  2. jsp+JavaScript 实现简单的验证码登录
  3. layui数据表格解析html,layui框架table 数据表格的方法级渲染详解
  4. 迅雷私传用户资料陷入信任危机
  5. 三星980处理器和骁龙855_骁龙855与麒麟980性能PK, 高通还是高通!
  6. 亮度遮罩和alpha遮罩_在PhotoShop中将Alpha遮罩的云创建为PNG
  7. 现代网页排版有什么要求_调查:现代网站的更好排版
  8. 服装产品物流及经营分析执行方案
  9. 浙江大华浙大2010年校园招聘笔试试题
  10. git切换分支报错:error: pathspec 'origin/XXX' did not match any file(s) known to git.