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

前面三篇讲的是同一种扩展方法,比照类库,我们可以称之为直接继承的扩展方法。本人推荐这种方法,简单,好理解。其实,名字空间库也有“间接继承”的扩展方法,也就是利用元表继承,在此展示一下,仅作为参考。在spaceB中这样写:

import test.spaceA;

namespace test.spaceB{
	//直接写要扩展的内容
  	vB="spaceA扩展出来的成员变量";
    funcB=function(){
    	..win.msgbox(vB,"spaceA扩展出来的成员函数");
    } 	
}
//名字空间也是表,我们为它设置一个元表来实现继承
test.spaceB@={
	_get=..test.spaceA;//spaceB没有的成员到spaceA中去找
	}

测试一下,能够正常调用:

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469)
winform.add()
/*}}*/

import test.spaceB;//导入刚刚建立的新库
test.spaceB.funcA();//调用基库的函数
test.spaceB.funcB();//调用我们扩展出来的函数

winform.show();
win.loopMessage();

 

 这时调用的owner也是统一的,是test.spaceB。但是占用了_get元方法,所以不太推荐。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值