小試驗,關於Ruby類的祖先鏈

2021-08-26 22:35:38 字數 641 閱讀 8088

對於理解ruby的方法查詢過程,祖先鏈概念非常重要,相同模組在原祖先鏈的類中多次混入時,新祖先鏈如何呢,做了乙個小試驗:

module m; end

module m1; end

module m2; end

class myclass

include m

include m1

endclass mysubclass < myclass

include m

include m2

endobj = mysubclass.new

puts obj.class.ancestors()

puts "\n\n\n"

puts basicobject.superclass==nil

def my_ancestors(current_class)

a =

a.push current_class

sc = current_class.superclass

until sc==nil

a.push sc

sc = sc.superclass

endaend

puts my_ancestors(obj.class)

關於C 類記憶體的一些小試驗

看了一些關於c 類記憶體的文章,有了一些粗淺的了解,來做幾個小試驗檢驗我自己的認知。試驗用計算機是64位的。理論上類記憶體的大小應該是非靜態資料成員的大小加上虛指標的大小再考慮記憶體對齊。先來乙個簡單的。class base base private int a char b 這個類有多大呢,64位...

Ruby學習 Ruby類的使用

簡單的類定義和呼叫 如下 customer.rbclass customer g number 0 def initialize id,name,address m id id m name name m addr address g number 1 enddef display details ...

讀UNP一書所作的小試驗 2

本次的試驗內容是unp第7章 套介面選項 so reuseaddr 套接字選項 在前一次的實驗中,我就注意到,如果在步驟1中,不是kill掉向client提供服務的server子程序,而是kill掉監聽外部連線的server 父程序的話,並不影響client與其對端的通訊 這也符合在os教材中傳授的...