Local variables
Önceki
İçindekiler
İçindekiler
İstisna işlemleri: rescue
Sonraki

 Ruby Kullanıcı KılavuzuSınıf Sabitleri 

Bir sabit büyük harfle başlayan bir ada sahiptir. Sabitlere bir kere değer ataması yapılmalıdır. Ruby'nin şu anki uygulamasına göre, sabitlere yeniden değer ataması yapmak hata yerine uyarı meydana getirir (eval.rb'nin ANSI olmayan versiyonuna göre hata aşağıdaki gibi belirtilir):

ruby>fluid=30
   30
ruby>fluid=31
   31
ruby>Solid=32
   32
ruby>Solid=33
   (eval):1: warning: already initialized constant Solid
   33

Sabitler sınıflarla beraber tanımlanabilirler ancak örnek değişkenlere göre sınıfın dışından da erişilebilir durumdadırlar.

ruby> class ConstClass
    |   C1=101
    |   C2=102
    |   C3=103
    |   def show
    |     print C1," ",C2," ",C3,"\n"
    |   end
    | end
   nil
ruby> C1
ERR: (eval):1: uninitialized constant C1
ruby> ConstClass::C1
   101
ruby> ConstClass.new.show
101 102 103
   nil

Sabitler modüller içinde de tanımlanabilirler.

ruby> module ConstModule
    |   C1=101
    |   C2=102
    |   C3=103
    |   def showConstants
    |     print C1," ",C2," ",C3,"\n"
    |   end
    | end
   nil
ruby> C1
ERR: (eval):1: uninitialized constant C1
ruby> include ConstModule
   Object
ruby> C1
   101
ruby> showConstants
101 102 103
   nil
ruby> C1=99  # pek iyi bir fikir değil
   99
ruby> C1
   99
ruby> ConstModule::C1  # modülün sabiti değişmedi ...
   101
ruby> ConstModule::C1=99 
ERR: (eval):1: compile error
(eval):1: parse error
ConstModule::C1=99
                ^
ruby> ConstModule::C1  # .. nasıl değiştiriğimize aldırış etmez.
   101


Local variables
Önceki
İçindekiler
İçindekiler
İstisna işlemleri: rescue
Sonraki