@interface

描述: 这是别人可以实现的一个接口。

版本: '>=3.3.0'

Syntax(语法)

用作JSDoc 标签字典 (默认开启):

@interface [<name>]

用作Closure Compiler 标签字典:

@interface

Overview

@interface标签使一个标识符作为其他标识符的一个实现接口。 例如,你的代码可能定义一个父类,它的方法和属性被去掉。您可以将@interface标签添加到父类,以指明子类必须实现父类的方法和属性。

作为接口,@interface标记应该添加到顶层标识符(例如,一个构造函数)。你并不需要将@interface标签添加加到实现接口(例如,实现的实例方法)的每个成员上。

如果您使用的是JSDoc标记字典(默认启用),你还可以定义一个接口的虚拟注释,而不是为接口编写代码。见一个例子“定义一个接口的虚拟注释”。

Examples(例子)

在下面的例子中,Color函数表示其它类可以实现的接口。

例如,使用 @interface 标签:

/**
 * Interface for classes that represent a color.
 *
 * @interface
 */
function Color() {}

/**
 * Get the color as an array of red, green, and blue values, represented as
 * decimal numbers between 0 and 1.
 *
 * @returns {Array&lt;number>} An array containing the red, green, and blue values,
 * in that order.
 */
Color.prototype.rgb = function() {
    throw new Error('not implemented');
};

下面的例子使用虚拟注释,而不是代码,来定义Color接口。

例如,虚拟注释来定义一个接口:

/**
 * Interface for classes that represent a color.
 *
 * @interface Color
 */

/**
 * Get the color as an array of red, green, and blue values, represented as
 * decimal numbers between 0 and 1.
 *
 * @function
 * @name Color#rgb
 * @returns {Array&lt;number>} An array containing the red, green, and blue values,
 * in that order.
 */