接前文。

既然要扩展spaceA库,就需要建立一个新库,并且把spaceA库的成员纳入到新库中,然后再考虑增加一些功能。

import test.spaceA;//导入基库
//这样基库的内容就包含在新库的代码文件中了,是不是很简单?namespace test.spaceB{//暂时不添加其他代码,先测试一下
}

将上述代码保存在aardio\lib\test\spaceB.aardio,测试一下,可以正常调用spaceA库成员。

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469)
winform.add()
/*}}*/import test.spaceB;//导入刚刚建立的新库
test.spaceA.funcA();//调用基库的函数winform.show();
win.loopMessage();

好,上面相当于已经实现了继承,下面来实现扩展。比如我们希望增加一个成员变量vB,增加一个成员函数funcB。方法如下:

import test.spaceA;//导入基库
//这样基库的内容就包含在新库的代码文件中了,是不是很简单?namespace test.spaceB{//暂时不添加其他代码,先测试一下
}namespace test.spaceA{vB="spaceA扩展出来的成员变量";funcB=function(){..win.msgbox(vB,"spaceA扩展出来的成员函数");}
}

先不说为什么,先测试一下,能够正常调用扩展出来的成员。

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469)
winform.add()
/*}}*/import test.spaceB;//导入刚刚建立的新库
test.spaceA.funcA();//调用基库的函数
test.spaceA.funcB();//调用我们扩展出来的函数winform.show();
win.loopMessage();

好,成功了,下一篇说一说为什么这么写可以。

aardio名字空间库的扩展方法(二)相关推荐

  1. aardio名字空间库的扩展方法(一)

    aardio是一款高效的win桌面编程语言,有丰富的类库.名字空间库可供调用.但是在实际开发中,我们仍然免不了对现有的库进行扩展,以适合自己的开发需求.(注意,是扩展,而不是直接修改现有的库,否则ID ...

  2. aardio名字空间库的扩展方法(四)

    前面三篇讲的是同一种扩展方法,比照类库,我们可以称之为直接继承的扩展方法.本人推荐这种方法,简单,好理解.其实,名字空间库也有"间接继承"的扩展方法,也就是利用元表继承,在此展示一 ...

  3. aardio名字空间库的扩展方法(三)

    通过前面的操作,我们实现了只要导入spaceB这个扩展库,就可以使用spaceA这个基库的内容,还可以使用我们自己新扩展出来的功能,目标达成.这里面有几个问题需要解释: 一.我们继承基库,采用的是在扩 ...

  4. aardio名字空间库的扩展方法(五)实例

    前面介绍了两种方法,都需要在扩展库中导入基库.但如果我们要扩展的是内核库,这一步当然就可以省略,因为内核库是IDE自动导入的,不需要我们操心.下面以扩展table库做一个实例,我们为table库增加一 ...

  5. 我的KT库之-----扩展方法

    了解或者认识KT: http://www.cnblogs.com/kingthy/archive/2011/08/08/2130973.html 在项目中如何使用KT? KT是一个库,所以将KT的dl ...

  6. Windows外壳名字空间的浏览

    Windows外壳名字空间的浏览 姜伟华 Windows95/98对Dos/Win3.x作了许多重大改进,在文件系统方面,它除了采用长文件名替代Dos 中的8.3文件名以外,引入外壳名字空间(Shel ...

  7. 临时表空间过大解决方法

    临时表空间过大解决方法 解决临时表空间过大有两种方法,方法一增加临时表空间的大小,方法二重建临时表空间,解决临时表空间过大的问题. 方案一:增加临时表空间的大小 --1.临时表空间的使用情况 SELE ...

  8. C++初级主题--名字空间域和类域

    一.序 在C++中支持三种域:局部域.名字空间域和类域. 二.名字空间域 1.名字空间域是随标准C++而引入的.它相当于一个更加灵活的文件域(全局域),可以用花括号把文件的一部分括起来,并以关键字na ...

  9. jquery的扩展方法介绍

    最近一直在写js,这其中也少不了一位js的主角了jQuery,下面介绍的是jQuery的一些扩展,也就是jQuery的扩展方法,jQuery的扩展方法有两种方式,一种是jQuery本身的扩展方法,另一 ...

最新文章

  1. python学习笔记--easy_install和pip
  2. Python风格规范
  3. boost::container实现显式实例化平面集测试程序
  4. 如何通过putty软件远程登录并且控制linux平台
  5. curl记录solr删除indexing
  6. Linux系统安装yum源报错256,Redhat Linux RHEL6配置本地YUM源及错误处理
  7. nested set model应用系列文章-基于后根跳跃遍历的规则匹配算法
  8. SCPPO(十):网站发布中的问题锦集—手动发布网站
  9. 《linux核心应用命令速查》连载一:accton:打开或关闭进程统计
  10. 【docker】ffmpeg本地转码三路推srs
  11. 中兴网信发布“广义智慧城市顶层设计框架”
  12. 想知道“照片识别文字”的技巧吗?快看这几个方法
  13. ZFS的ashift参数解读
  14. 「重磅」微信小程序再也不能打开APP了
  15. 深信服2019秋招技服岗面试总结
  16. Flink事件时间和水印详解
  17. arr.map()的使用
  18. VirtualBox 安装 Ubuntu Server 出现 Kernel Panic - not syncing: Attempted to kill the idle task 问题
  19. SAXReader 读文件读不出来
  20. mysql 笛卡尔积_Mysql(笛卡尔积、等值连接、自然连接、外连接)

热门文章

  1. C#线程池ThreadPool.QueueUserWorkItem接收线程执行的方法返回值
  2. android 带刻度的滑动条_android 滚轮刻度尺的实现
  3. 《Code Complete 代码大全》中用到的英文
  4. 百度云bae安装discuz论坛教程
  5. 我们需要什么样的课程观
  6. 已经发车的票还能取出来吗_已发车的火车,网上订购的火车票还能取出来吗?...
  7. 【应用数学】动态最优化(6):确定性最优控制
  8. join()方法作用
  9. js 判断 div 的 隐藏 和显示
  10. 【Python】networkx读取gml图文件,有两个问题影响使用