您好,登錄后才能下訂單哦!
首先,我們通過一個實例來觀察類變量與類方法:
- class Square
- def initialize
- @@number_of_squares = define?(@@number_of_squares) ? @@number_of_squares + 1 : 1
- end
- def self.test_method
- puts "Hello from the Square class!"
- end
- def test_method
- puts "Hello from an instance of class Square!"
- end
上面的代碼中,number_of_squares用來記錄類Square的實例個數,是類變量,它與對象變量的區別是,前面用兩個@符號來標記。Square類中,第一個test_method是類方法,它與對象方法的區別是,它用self.前綴標示。這里self表示當前類,因此self.test_method定義的方法專用于該類。
如果我們學過Java或C++,會發現類變量其實與Java或C++中的靜態變量類似,而類方法與Java或C++中的靜態方法類似。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。