国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術(shù)及教程分享平臺(tái)!
分類導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務(wù)器之家 - 腳本之家 - Ruby - 淺析Ruby中的類對(duì)象的概念

淺析Ruby中的類對(duì)象的概念

2020-04-28 09:53腳本之家 Ruby

這篇文章主要介紹了Ruby中的類對(duì)象的概念,是Ruby學(xué)習(xí)當(dāng)中的基礎(chǔ)知識(shí),需要的朋友可以參考下

 面向?qū)ο蟮某绦蛏婕邦惡蛯?duì)象。 一個(gè)類是藍(lán)本,從個(gè)別對(duì)象被創(chuàng)建。在面向?qū)ο蟮男g(shù)語,我們說小明的自行車是被稱為自行車類的對(duì)象實(shí)例。

任何車輛的例子。它包括輪子,馬力,燃油或燃?xì)夤奕萘俊_@些特點(diǎn)形成的類車輛的數(shù)據(jù)成員。可以從其他車輛區(qū)分這些特征。

車輛也有一定的功能,如停止,駕駛,超速駕駛。即使這些功能形成的類車輛的數(shù)據(jù)成員。因此,可以定義一個(gè)類作為一個(gè)組合的特點(diǎn)和功能。

車輛類可以被定義為:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Class Vehicle
{
  Number no_of_wheels
  Number horsepower
  Characters type_of_tank
  Number Capacity
  Function speeding
  {
  }
  Function driving
  {
  }
  Function halting
  {
  }
}

通過這些數(shù)據(jù)成員分配不同的值,可以形成類車輛的幾個(gè)實(shí)例。例如,飛機(jī)的有三個(gè)輪子,1,000馬力,不同的燃料罐及容量為100升。同樣的方式,一輛汽車有四個(gè)輪子,200馬力,氣體作為不同的罐及容量25升。
Ruby中定義一個(gè)類:

要通過使用Ruby實(shí)現(xiàn)面向?qū)ο缶幊蹋枰葘W(xué)習(xí)如何創(chuàng)建對(duì)象和Ruby中的類。

Ruby中一個(gè)類總是以關(guān)鍵字class類的名稱開頭。名稱應(yīng)始終以首字母大寫。如以是Customer類可以顯示為:

?
1
2
class Customer
end

類定義結(jié)束通過使用關(guān)鍵字end結(jié)束。在類的所有數(shù)據(jù)成員是類之間的定義,并以end關(guān)鍵字作為結(jié)束符。
Ruby類中的變量:

Ruby提供了四種類型的變量:

    局部變量: 局部變量是在一個(gè)方法中定義的變量。局部變量是不可用的方法外。更多細(xì)節(jié)在隨后的章節(jié)中的方法中會(huì)介紹。局部變量一般以小寫字母或_開頭。

    實(shí)例變量: 實(shí)例變量是可跨越任何特定實(shí)例或?qū)ο蟮姆椒ā_@意味著,從對(duì)象到對(duì)象的實(shí)例變量改變。實(shí)例變量前面加上at符號(hào)(@),跟著變量名。

    類變量:類變量是可在各種不同的對(duì)象。 一個(gè)類變量屬于類,是類的一個(gè)特點(diǎn)。他們前面的符號(hào)@@跟著的變量名。

    全局變量: 類變量是不能跨類。如果想要一個(gè)單一的變量可以跨類,需要定義一個(gè)全局變量。全局變量的前面總是用美元符號(hào)($)。

例子:

使用類變量@@no_of_customers,能確定創(chuàng)建的對(duì)象的數(shù)量。這使得導(dǎo)出的客戶數(shù)量。

?
1
2
3
class Customer
  @@no_of_customers=0
end

Ruby中使用new方法創(chuàng)建對(duì)象:
對(duì)象是類的實(shí)例。現(xiàn)在,將學(xué)習(xí)如何在Ruby中創(chuàng)建對(duì)象一個(gè)類對(duì)象。Ruby中通過使用new方法創(chuàng)建對(duì)象。
new方法是一種獨(dú)特的方法,這是預(yù)定義在Ruby庫。new方法屬于類的方法。
下面的例子是創(chuàng)建兩個(gè)對(duì)象類客戶cust1 和 cust2:

?
1
2
cust1 = Customer. new
cust2 = Customer. new

在這里,cust1和cust2是兩個(gè)對(duì)象的名字。在等于號(hào)(=)之后,類名稱將按照對(duì)象名稱。然后,點(diǎn)運(yùn)算符和關(guān)鍵字new在后面。
自定義方法來創(chuàng)建Ruby對(duì)象 :

可以通過new方法的參數(shù),這些參數(shù)可以用來初始化類變量。

當(dāng)打算聲明的new方法具有參數(shù),需要聲明的方法在創(chuàng)建類的時(shí)候初始化。

initialize方法是一種特殊類型的方法,該方法時(shí)將執(zhí)行new方法的類被稱為參數(shù)。

下面的例子是創(chuàng)建initialize方法:

?
1
2
3
4
5
6
7
8
class Customer
  @@no_of_customers=0
  def initialize(id, name, addr)
   @cust_id=id
   @cust_name=name
   @cust_addr=addr
  end
end

在這個(gè)例子中,可以聲明局部變量的初始化方法id, name和addr。這里def 結(jié)束被用來定義一個(gè)Ruby的??方法初始化。這些將在有關(guān)后續(xù)章節(jié)中了解更多。

在initialize方法中,對(duì)這些局部變量的值傳遞到實(shí)例變量@cust_id,@cust_name和@cust_addr。這里的局部變量持有的值由new方法一同傳遞。

現(xiàn)在可以創(chuàng)建對(duì)象,如下所示:

?
1
2
cust1=Customer.new("1", "John", "Wisdom Apartments, Ludhiya")
cust2=Customer.new("2", "Poul", "New Empire road, Khandala")

Ruby中類的成員函數(shù):

在Ruby中,函數(shù)被調(diào)用的方法。在一個(gè)類中的每個(gè)方法的方法名用關(guān)鍵字def開始。

方法名總是以小寫字母最好。你最終的方法Ruby中通過使用關(guān)鍵字end表示結(jié)束。

下面的例子是定義一個(gè)Ruby的方法:

?
1
2
cust1=Customer.new("1", "John", "Wisdom Apartments, Ludhiya")
cust2=Customer.new("2", "Poul", "New Empire road, Khandala")

這里statement1和statement2為函數(shù)體的一部分。這些statments可以是任何有效的Ruby語句。例如,我們可以在方法中打印Hello Ruby如下:

?
1
2
3
4
5
class Sample
  def hello
   puts "Hello Ruby!"
  end
end

現(xiàn)在,在下面的例子Sample類創(chuàng)建一個(gè)對(duì)象,并調(diào)用hello方法,看到的結(jié)果:

?
1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/ruby
 
class Sample
  def hello
   puts "Hello Ruby!"
  end
end
 
# Now using above class to create objects
object = Sample. new
object.hello

這將產(chǎn)生以下結(jié)果:

?
1
Hello Ruby!

 

延伸 · 閱讀

精彩推薦
  • Ruby剖析 Ruby 訪問控制

    剖析 Ruby 訪問控制

    前面,我們說 Ruby 沒有函數(shù),只有方法.而且實(shí)際上有不止一種方法.這一節(jié)我們介紹 訪問控制 (accesscontrols). 想想當(dāng)我們?cè)谧罡邔佣皇窃谝粋€(gè)類的定義里定義...

    ruby教程網(wǎng)3572020-04-08
  • RubyRuby環(huán)境下安裝使用bundler來管理多版本的gem

    Ruby環(huán)境下安裝使用bundler來管理多版本的gem

    這篇文章主要介紹了Ruby環(huán)境下安裝使用bundler來管理多版本的gem的方法,舉了Ruby On Rails中的應(yīng)用實(shí)例來進(jìn)行演示,需要的朋友可以參考下 ...

    日拱一卒4332020-05-10
  • RubyRuby迭代器的7種技巧分享

    Ruby迭代器的7種技巧分享

    這篇文章主要介紹了Ruby迭代器的7種技巧分享,Ruby中的迭代器非常人性化,本文既是講解了7個(gè)技巧也是講解了7種迭代器,需要的朋友可以參考下 ...

    腳本之家4782020-04-20
  • RubyRuby進(jìn)行文件信息輸出實(shí)例代碼

    Ruby進(jìn)行文件信息輸出實(shí)例代碼

    Ruby進(jìn)行文件信息輸出實(shí)例代碼,數(shù)據(jù)是隨機(jī)的,所以每次的記錄都會(huì)不同。 ...

    ruby教程網(wǎng)2962020-04-10
  • RubyRuby設(shè)計(jì)模式編程中使用Builder建造者模式的實(shí)例

    Ruby設(shè)計(jì)模式編程中使用Builder建造者模式的實(shí)例

    這篇文章主要介紹了Ruby設(shè)計(jì)模式編程中使用Builder建造者模式的實(shí)例,建造者模式將一個(gè)復(fù)雜對(duì)象的構(gòu)造與它的表示分離,使同樣的構(gòu)建過程可以創(chuàng)建不同的表...

    范孝鵬2192020-05-07
  • RubyRuby簡(jiǎn)潔學(xué)習(xí)筆記(一):字符串、數(shù)字、類和對(duì)象

    Ruby簡(jiǎn)潔學(xué)習(xí)筆記(一):字符串、數(shù)字、類和對(duì)象

    這篇文章主要介紹了Ruby簡(jiǎn)潔學(xué)習(xí)筆記(一):字符串、數(shù)字、類和對(duì)象,本文是學(xué)習(xí)筆記第一篇,需要的朋友可以參考下 ...

    腳本之家2472020-04-20
  • RubyCentOS中配置Ruby on Rails環(huán)境

    CentOS中配置Ruby on Rails環(huán)境

    經(jīng)過一個(gè)上午的折騰,終于把ROR環(huán)境在CentOS中搞定,繞了很多彎路,把文章寫下來總結(jié)一下 ...

    可樂加糖4762020-04-12
  • Ruby簡(jiǎn)要說明Ruby中的迭代器

    簡(jiǎn)要說明Ruby中的迭代器

    這篇文章主要介紹了Ruby中的迭代器,迭代器的概念在動(dòng)態(tài)語言的編程中十分重要,文章中介紹了Ruby中的each迭代器和collect迭代器,需要的朋友可以參考下 ...

    goldensun2772020-04-25
主站蜘蛛池模板: 精品视频二区三区 | 综合色久| 级毛片 | 精品国产成人 | 国产综合网站 | 亚洲视频精品在线 | 一区二区三区久久 | 一级毛片免费完整视频 | 欧美国产日韩一区 | 日韩高清一区二区 | 色视频在线免费观看 | 中文永久免费观看 | 一级毛片在线免费看 | 国产精品一区二区三区免费视频 | 在线精品日韩 | 青青操av| 国产美女网站 | 91精品国产综合久久小仙女陆萱萱 | 懂色av中文字幕一区二区三区 | 亚洲一区在线日韩在线深爱 | 久一久久| 国产在线一二三区 | 国产精品毛片久久久久久久 | 久热中文字幕 | 少妇一级片免费看 | 精品国产一区二区三区性色av | 国产精品久久久久久久久晋中 | 日韩高清在线一区 | 成人二区 | 成人羞羞视频免费 | 婷婷免费视频 | 国产成人精品一区二区 | 亚洲欧美视屏 | 中文字幕亚洲欧美 | 国产亚洲一区二区三区 | 日韩成人精品在线 | 免费观看av| 91成人短视频在线观看 | 欧美日韩精品 | 亚洲美女久久 | 在线视频a |