校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Ruby self在不同環(huán)境的含義

Ruby self在不同環(huán)境的含義

熱門標簽:真人和電話機器人對話 安徽400電話辦理 金融電銷公司怎么辦理外呼系統(tǒng) 電話智能外呼系統(tǒng)誠信合作 湖州電銷防封卡 信陽話務(wù)外呼系統(tǒng)怎么收費 什么渠道可以找外呼系統(tǒng)客戶 雷霆電話機器人電話 使用電話機器人電銷是否違法
而由于ruby作為一個完全純凈的面向?qū)ο笳Z言,任何東東都是對象,方法是對象,類也是對象...,所以self就會有很多環(huán)境,區(qū)分不同環(huán)境的self含義才能更好的理解程序的含義
一、Top Level Context
Ruby代碼
puts self
打印出main,這個代表Object的默認對象main.
二、在class或module的定義中:
在class和module的定義中,self代表這個class或這module對象:
Ruby代碼
class S
puts 'Just started class S'
puts self
module M
puts 'Nested module S::M'
puts self
end
puts 'Back in the outer level of S'
puts self
end
輸出結(jié)果:
寫道
>ruby self1.rb
Just started class S
Nested module S::M
S::M
Back in the outer level of S
>Exit code: 0
三、在實例的方法定義中:
這點和java的this代表的東東一樣:程序自動傳遞的調(diào)用這個方法的對象
Java代碼
class S
def m
puts 'Class S method m:'
puts self
end
end
s = S.new
s.m
運行結(jié)果:
寫道
>ruby self2.rb
Class S method m:
#S:0x2835908>
>Exit code: 0
四、在單例方法或者類方法中:
單例方法是針對一個對象添加的方法,只有這個對象擁有和訪問這個方法,這時候self是擁有這個方法的對象:
Ruby代碼
# self3.rb
obj = Object.new
def obj.show
print 'I am an object: '
puts "here's self inside a singleton method of mine:"
puts self
end
obj.show
print 'And inspecting obj from outside, '
puts "to be sure it's the same object:"
puts obj
運行結(jié)果:
寫道
ruby self3.rb
I am an object: here's self inside a singleton method of mine:
#Object:0x2835688>
And inspecting obj from outside, to be sure it's the same object:
#Object:0x2835688>
>Exit code: 0
在類方法中self代表這個類對象:
Ruby代碼
# self4.rb
class S
def S.x
puts "Class method of class S"
puts self
end
end
S.x
運行結(jié)果:
寫道
>ruby self4.rb
Class method of class S
>Exit code: 0
從上面的例子我們可以看出不管是ruby的self還是java的this都表示在當前的環(huán)境下你可以訪問的當前的或者默認的對象。
您可能感興趣的文章:
  • CentOS中配置Ruby on Rails環(huán)境
  • 在阿里云 (aliyun) 服務(wù)器上搭建Ruby On Rails環(huán)境

標簽:山南 運城 岳陽 鶴崗 湛江 德州 濟南 六盤水

巨人網(wǎng)絡(luò)通訊聲明:本文標題《Ruby self在不同環(huán)境的含義》,本文關(guān)鍵詞  Ruby,self,在,不同,環(huán)境,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Ruby self在不同環(huán)境的含義》相關(guān)的同類信息!
  • 本頁收集關(guān)于Ruby self在不同環(huán)境的含義的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 平阳县| 南城县| 永嘉县| 涟水县| 梧州市| 克东县| 留坝县| 如东县| 治县。| 龙泉市| 西乌| 赤壁市| 墨玉县| 菏泽市| 尼木县| 陆川县| 台州市| 平和县| 河津市| 仁布县| 青冈县| 屏东市| 襄汾县| 昌吉市| 遵义县| 鄂尔多斯市| 东平县| 南宫市| 宜君县| 合川市| 东山县| 海兴县| 三亚市| 丹江口市| 宁夏| 綦江县| 清原| 林州市| 牡丹江市| 云和县| 大英县|