当前位置 : 主页 > 网页制作 > Dojo >

Dojo中类的定义

来源:互联网 收集:自由互联 发布时间:2021-06-15
JavaScript是基于对象的脚本语言,但是它的结构体系与i面向对象语言如Java并不一样,这对于习惯了面向对象的程序员来说,有时候适应起来并不那么容易。而DOJO,这个封装了JavaScript的

JavaScript是基于对象的脚本语言,但是它的结构体系与i面向对象语言如Java并不一样,这对于习惯了面向对象的程序员来说,有时候适应起来并不那么容易。而DOJO,这个封装了JavaScript的库,提供了面向对象编程的概念,如类、构造器、继承等。本文主要介绍dojo中类的定义格式以及各参数的设置。

先看一个小例子:

dojo.provide("custom.javascript.Student);
dojo.declare("custom.javascript.Student",null,{
    firstName: "",
    middleName:"",
    lastName: "",
    constructor: function(fName, mName, lName){
        this.firstName = fName;
        this.middleName=mName;
        this.lastName = lName;
    },
    buyBook: function(bookName,num){
        alert(firstName+" "+middleName+" "+lastName+" want to buy "+num+" "+bookName);
    }
});

       示例定义了一个Student类,第一条语句dojo.peovide("custom.javascript.Student"),与调用类时的dojo.require("custom.javascript.Student")相对应。dojo中类的定义格式为:dojo.declare(className,superClass,classMemeber),该方法有三个参数,各参数含义如下:

      1.第一个参数className为类名,如示例中的custom.javaworld.Student;

      2.第二个参数为该类的父类,dojo中提供了多重继承,当有多个父类时,使用[superClass1,superClass2,...]格式,示例中值为null,因为该类不继承自任何类;

3.第三个参数为类的成员定义,与一般面向对象语言一样,dojo中类的成员也包括字段和方法,定义格式为一个HashMap(键:值),示例中,firstName,middleName,lastName为类的字段,constructor为类的构造器,用它来构造对象,buyBook为学生类的一个方法。

     dojo中,类定义后,同样可以如其他语言一样,使用new className()来构造对象,如本例中,可使用new custom.javaworld.Student();

网友评论