ruby里面module和class的區(qū)別
1 回答

慕蓋茨4494581
TA貢獻(xiàn)1850條經(jīng)驗(yàn) 獲得超11個(gè)贊
1、 模塊不能實(shí)例化,類不能include
2、如果模塊和類不在用一個(gè)文件中,如果要使用include,先使用require把文件引入
3、include不是簡(jiǎn)單的將模塊的實(shí)例變量和方法拷貝到類中,而是建立一個(gè)由類到所包含模塊的引用
4、如果有多個(gè)include,將依次生成代理類,最后一個(gè)include的將是該類的直接超類,依次向上衍生
5、含有include的模塊或者類定義,可以訪問它所包含的常量,類變量和實(shí)例方法。如果一個(gè)模塊被包含,改模塊的常量,類變量,實(shí)例方法都被綁定到該類的一個(gè)匿名超類中,類的對(duì)象會(huì)響應(yīng)發(fā)送給模塊實(shí)例方法的消息
6、模塊里可以定義一個(gè)initialize方法,當(dāng)創(chuàng)建包括模塊的類的對(duì)象時(shí),滿足一下條件之一,則模塊的該方法將被調(diào)用.
- 1 回答
- 0 關(guān)注
- 898 瀏覽
添加回答
舉報(bào)
0/150
提交
取消