Ruby private 关键字

来源:互联网 发布:全球根域名服务器 编辑:程序博客网 时间:2024/05/18 06:38

闲来无事,决定动手弄弄Ruby的基础东西,可是一上来就报错了。`private': undefined method `duration_min' for class `Song' (NameError),具体代码如下

经过仔细检查才发现原因如下:由于Ruby是解释型的语言,而不是像C#, Java等编译好的。也就是说Ruby的很多东西,上下文都是在运行时判断的。例如:上面的例子就是因为Ruby运行到 private :duration_min,发现没有duration_min 方法的定义就报错了。这是个人理解啊,呵呵 我把private :duration_min移动到 方法duration_min定义的后面 就通过了。