类的扩展和继承 class Fixnum def dosome(str) puts str end def abs puts "覆盖了原有的方法" end end puts 1.class 1.dosome("动态添加的方法") 1.abs#覆盖原有的方法 freeze冻结对象 class Test attr_accessor :value end t=Test.new t.value=1 a="test" a.freeze #a<<
装载模块 Haskell 中的模块是含有一组相关的函数,类型和类型类的组合.而 Haskell 进程的本质便是从主模块中引用其它模块并调用其中的函数来执行操作.这样可以把代码分成多块,只要一个模块足够的独立,它里面的函数便可以被不同的进程反复重用.这就让不同的代码各司其职,提高了代码的健壮性. Haskell 的标准库就是一组模块,每个模块都含有一组功能相近或相关的函数和类型.有处理 List 的模块,有处理并发的模块,也有处理复数的模块,等等.目前为止我们谈及的所有函数,类型以及类型类都是 P
模块可能是一个文件,也可能是包含一个或多个文件的目录.如果模块是个目录,node.js通常会在这个目录下找一个叫index.js的文件作为模块的入口. 典型的模块是一个包含exports对象属性定义的文件,这些属性可以是任意类型的数据,比如字符串.对象和函数. 创建一个模块 //person.js var name = 'lbs'; var age = 10; function sayName(){ console.log( name ); } function sayAge(){ consol