2011년 6월 2일 목요일

Class Variables

Class Variables

클래스 변수는 그 클래스의 모든 객체가 공유하며 클래스 메서드를 통해 접근할 수 있다. 하나의 클래스에 대해 특정 클래스 변수는 단 하나만 존재한다. 클래스 변수는 "@@count" 처럼 두개의 "@"를 사용한다. 클래스 변수는 사용하기 전에 반드시 초기화 해야 한다. Song 클래스에서 노래가 Play된 횟수를 구한다면

class Song
 @@totalPlays = 0
 def initialize(name, artist, duration)
@name = name
@artist   = artist
@duration = duration
@plays = 0
 end
 
 def play
@plays += 1
@@totalPlays += 1
"This song(#@name) : #@plays plays, Total #@@totalPlays plays"
 end
 
end

song1 = Song.new("Bicylops", "Fleck", 260)
song2 = Song.new("My Way", "Sinatra", 255)
puts song1.play
puts song2.play
puts song1.play
puts song1.play

>> This song(Bicylops) : 1 plays, Total 1 plays
>> This song(My Way) : 1 plays, Total 2 plays
>> This song(Bicylops) : 2 plays, Total 3 plays
>> This song(Bicylops) : 3 plays, Total 4 plays

댓글 없음:

댓글 쓰기

블록체인 개요 및 오픈소스 동향

블록체인(block chain) 블록체인은 공공 거래장부이며 가상 화폐로 거래할때 발생할때 발생할 수 있는 해킹을 막는 기술. 분산 데이터베이스의 한 형태로, 지속적으로 성장하는 데이터 기록 리스트로서 분산 노드의 운영자에 의한 임의 조작이 불가...