print不自動(dòng)換行,puts會(huì)自動(dòng)換行第2/2頁
1. 等價(jià)語句
單引號(hào)里是什么就是什么,會(huì)照著輸出。
ruby 代碼
a=5 b="hhhh" print("a is ",a,"\n") puts("a is #{a}") puts('a is #{a}') 輸出結(jié)果: a is 5 a is 5 a is #{a}
ruby 代碼
#ruby支持缺省參數(shù) def sum(a,b=5) a+b end puts sum(3,6) #輸出結(jié)果為:9 puts sum(3)#輸出結(jié)果為8 #ruby支持可變參數(shù) def sum(*num) numSum = 0 num.each{|i| numSum += i} return numSum end puts sum() #輸出結(jié)果為0 puts sum(3,6)#輸出結(jié)果為9 puts sum(1,2,3,4,5,6,7,8,9)#輸出結(jié)果為45
實(shí)例變量:每個(gè)實(shí)例獨(dú)享,變量名用@開頭
類變量:所有實(shí)例共享,變量名用@@開頭,類似java里的static變量,但是在使用前必須要初始化。
類方法:不需要通過實(shí)例對(duì)象來調(diào)用。類方法定義方式: 類名.方法名,如:
ruby 代碼
def StudentClass.student_count puts "aaa" end
如果在外部調(diào)用一個(gè)類里的常量,需要用到域作用符號(hào)"::"
4.ruby里的單例方法:給具體的某個(gè)實(shí)例對(duì)象添加方法,這個(gè)方法只屬于這個(gè)實(shí)例對(duì)象的。這樣的方法叫單例方法
定義單例方法,首先要生成一個(gè)實(shí)例對(duì)象,其次要在方法名前加上一個(gè)對(duì)象名和一個(gè)點(diǎn)號(hào)(.)
如:
ruby 代碼
class Person def talk puts "hi!" end end p1 = Person.new p2 = Person.new def p2.talk #定義單例方法p2.talk puts "Here is p2." end def p2.laugh puts "ha,ha,ha..." end p1.talk p2.talk p2.laugh 輸出結(jié)果為: hi! Here is p2. ha,ha,ha...
ruby 代碼
#訪問控制
#public , protected, private
#public 方法,可以被定義它的類和其子類訪問,可以被類和其子類的實(shí)例對(duì)象調(diào)用
#protected 方法,可以被定義它的類和其子類訪問,不能被類和其子類的實(shí)例對(duì)象調(diào)用,但是 可以在類和其子類中制定給實(shí)例對(duì)象
#private 方法,可以被定義它的類和其子類訪問,不能被類和其子類的實(shí)例對(duì)象調(diào)用,私有方法不能指定對(duì)象
#訪問控制 #public , protected, private #public 方法,可以被定義它的類和其子類訪問,可以被類和其子類的實(shí)例對(duì)象調(diào)用 #protected 方法,可以被定義它的類和其子類訪問,不能被類和其子類的實(shí)例對(duì)象調(diào)用,但是 可以在類和其子類中制定給實(shí)例對(duì)象 #private 方法,可以被定義它的類和其子類訪問,不能被類和其子類的實(shí)例對(duì)象調(diào)用,私有方法不能指定對(duì)象 class Person public def talk puts "public:talk" end def speak "protected:speak" end def laugh "private:laugh" end protected :speak private :laugh def useLaughTest(another) puts another.laugh #這里錯(cuò)誤,私有方法不能指定對(duì)象 end def useSpeakTest(another) puts another.speak #這里可以,,protected方法可以指定對(duì)象 end end class Student < Person def useLaugh puts laugh end def useSpeak puts speak end end p1 = Person.new p1.talk #p1.speak 實(shí)例對(duì)象不能訪問protected方法 #p1.laugh 實(shí)例對(duì)象不能訪問private方法 p2 = Student.new p2.useLaugh p2.useSpeak
public:talk
private:laugh
protected:speak
- CSS控制文本自動(dòng)換行的問題
- javascript 一個(gè)自定義長(zhǎng)度的文本自動(dòng)換行的函數(shù)
- javascript實(shí)現(xiàn)的一個(gè)自定義長(zhǎng)度的文本自動(dòng)換行的函數(shù)。
- 多瀏覽器支持CSS 容器內(nèi)容超出(溢出)支持自動(dòng)換行
- Discuz 公告效果(自動(dòng)換行,無間隙滾動(dòng))
- Eclipse 格式化代碼時(shí)不換行與自動(dòng)換行的實(shí)現(xiàn)方法
- Flex Label自動(dòng)截取、自動(dòng)換行代碼
- ASP.NET Datagridview自動(dòng)換行的小例子
- js實(shí)現(xiàn)連續(xù)英文字符自動(dòng)換行兼容ie6 ie7和firefox
- JavaMe開發(fā)繪制可自動(dòng)換行文本