首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

正如在前面几段中看到的一样,在注册新类型时可以指定它的基类。Atlas框架的一个设计目标就是让JavaScript更易于阅读和调试;通过使用继承,开发者无需再在类之间复制成员变量或方法,这也正体现了这个目标。

证实上述论点的最好方法是通过实例程序。前面创建的仅仅是一个简单的、泛化了的Car类。现实世界中存在着很多不同种类的汽车。例如,运动型多用途车SUV)就不同于运动型汽车。SUV通常会采用四轮驱动4WD),而运动型汽车通常是两轮驱动的。在对待各种不同类型的汽车时,只有查询类型为SUV的汽车的四轮驱动信息才是有意义的。

可以在前面创建的.js文件的结尾部分添加下列代码,用来定义SUV类型的Car

前面AtlasBook.Car类的构造函数接受生产厂商(strMake)、型号(strModel)以及生产年份(strYear)作为参数。这里的SUV类将同样接受上述三个参数,加上另外的一个参数,表示四轮驱动的类型(strDriveType)。

代码的第一行将生产厂商、型号和生产年份传递给了基类,这样SUV类通过使用基类的构造函数初始化基类的属性,而无需再次书写这部分的初始化代码:

然后,SUV类初始化了属于自己的属性(DriveType),并实现了取得该属性的方法:

最后,将SUV类注册到Atlas中,并指定基类为AtlasBook.Car,以实现SUV类从AtlasBook.Car类的继承:

要查看上述代码的实际效果,返回到早些时候创建的那个Web Form,按如下代码修改Button1_onclick函数:

这段代码添加了SUV对象testSUV,然后调用了getMakeandModel方法和getYear方法。上述两个方法都是在基类(Car)中实现的,并且被派生类(SUV)继承了过来。运行这个应用程序即可看到如图3-13所示的实际效果。

3-13  在派生类中调用基类的方法

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论