皆さん、私はRubyを学んでいて、最近JAVAから移動しました。 JAVAでは、クラスのメンバー変数を静的にすることができ、そのメンバー変数はクラスのインスタンス間で同じままになります。私はどのようにルビーでこれを達成するのですか?Rubyのクラスメソッド(JAVAのstaticと同等)
class Baseclass
@@wordshash
end
これは、私はこれをテストしていながら、それはwordhashは、基底クラスのインスタンスで同じまま@@で、これまでの目的を果たすようだ:私は私のRubyのクラスでこのような何かをしました。私の理解は正しいのですか?
また、JAVAの静的メソッドと同等のメンバメソッドをクラスに持たせたい(これにアクセスするためにクラスのインスタンスを持つ必要はありません)。これどうやってするの? 。
class Baseclass
@@wordshash
#static or class method
def getwordhash()
return @@wordshash
end
end
:たとえば、私はこのようなので、何か)基底クラス(のインスタンスを作成する必要はありません@@ wordshash及びその方法をユーザーに返しgetwordshashのような基本クラス()のメソッドを持つようにしたいですこれは非常に素朴な質問であれば、その後、私は謝罪
#without making an instance
@hash = Baseclass.getwordhash()
ように私はそれを使用することができ、私は、Rubyのは本当に新しいなく、学ぶことは非常に興奮しています。
Ruby and Rails Naming Conventionsで
実際には、コンベンションには通常このタイプはありません。 '@@ words_hash'ではなく' @@ words'になります。 –