您的位置:首页 > 编程语言 > Ruby

《Ruby元编程》Open Class要特别注意名称覆盖

2013-11-22 11:06 197 查看
在Ruby中,class是开放的。 使用Open Class的关键问题在于: 名称覆盖。 就是你写的方法名称,特别要跟别人写的,不要相同。否则会覆盖,覆盖名称不要紧,连方法体都会覆盖,从而产生错误。

名称这东西,很容易冲突。最简单的方式是,不断的往 名称添加父名称,祖父名称。。。构成下面形式: GrandfatherName.FatherName.Name。 在java中叫做package,在C#中叫NameSpace.

起名字,还好办。但在一个Class,每个成员member,名称应该不同的。

问题在于Open Class中,及其容易修改到别人写的class,所以要尤其注意。这个java等不一样,没有静态编译的。没有编译,意味着没人帮你检查这个问题。

所以,有编译器语言好处是,它首先会帮你检查写的是否正确。正确了才构造语法树AST。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息