浏览 3429 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2006-12-15
前言prototype.js最令我心仪的功能之一,就是可以很容易使用类似JAVA语言一样的方式构建对象模型,如何使用prototype.js构建对象模型呢? 这是通过prototype.js定义的Class和Object两个对象来实现的。 假定我们需要构建一个Shape对象表示一种形状,这个形状有一个功能是把自己绘制出来,另外有一个子类Circle表示圆形,要实现这样的对象结构的完整代码如下: js 代码
使用Class定义类Class对象在声明其他的类的时候使用。用这个对象的create方法声明一个变量,就相当于java中定义了一个类,类名就是变量名称,而且这个类就支持initialize方法,类似于构造函数功能。 如下代码就创建了一个名称为Shape的类。 js 代码
然后可以定义这个类的变量和方法,采用javascript的prototype函数,下面的代码定义了一个initialize方法(相当于构造函数)和一个paint方法。 js 代码
使用Object实现继承Object对象有两个重要的方法。
这里我们使用静态方法来实现,下述代码的含义是Circle类将具有Shape类的所有属性和方法,Circle提供一个构造函数,接受三个参数分别表示中心点X,Y和半径。 js 代码
如何使用刚才有讲过通过Class.create方法使类支持initialize方法,类似于构造函数的功能。比如要构建一个中心点坐标为(3,4),半径为5的圆,并让他绘制自己,使用如下代码: js 代码
后话:Class和Object应该是prototype.js的基石,其他所有的对象定义都基于这种机制。很多使用prototype.js的开源组件库也使用此功能定义对象结构,比如script.aculo.us 的测试框架。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |