Hello!

While learning Ruby I stumbled across something I don't understand:

Object === Object
=> true

String === String
=> false

Can anyone tell me, why Ruby behaves this way? I came across this when I 
tried to understand, why this works:

case 'abc'
     when String
         'a String'
     else
         'not a String'
end
=> "a String"

.... but this doesn't work the way I expected it to:

case 'abc'.type
     when String
         'a String'
     else
         'not a String'
end
=> "not a String"


thanks

Bernhard Weitzhofer