首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 更多程式設計知識

Ruby 類別與物件基礎概念解析:定義、變數類型、建立物件、initialize 與成員方法

     編輯:更多程式設計知識

類別定義


class Customer
end

關鍵字 class 開頭,類別名首字大寫,駝峰式命名,end 結束。

變數類型

類型前綴作用域說明
區域變數無 / _方法內方法結束即銷毀
實例變數@物件實例每個物件獨立,如 @width
類別變數@@類別及所有實例共享資料,如 @@count
全域變數$整個程式跨類別共享,慎用

建立物件


cust1 = Customer.new
cust2 = Customer.new

new 為類別方法,會配置記憶體並呼叫 initialize。

自訂 initialize 方法


class Customer
  @@no_of_customers = 0
  def initialize(id, name, addr)
    @cust_id = id
    @cust_name = name
    @cust_addr = addr
    @@no_of_customers += 1
  end
end

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

成員方法


class Sample
  def hello
    puts "Hello Ruby!"
  end
end

obj = Sample.new
obj.hello  # Hello Ruby!
  • 方法名以小寫開頭,def 定義,end 結束。
  • 最後一行運算式為回傳值(可省略 return)。

存取器與設定器


class Box
  def initialize(w, h)
    @width, @height = w, h
  end
  # getter
  def width; @width; end
  def height; @height; end
  # setter
  def width=(v); @width = v; end
  def height=(v); @height = v; end
end

box = Box.new(10, 20)
puts box.width   # 10
box.width = 30
puts box.width   # 30

可用 attr_accessor :width, :height 一鍵產生。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved