Gunnar
12/26/2005 8:31:00 AM
Ilias Lazaridis wrote:
> Antonio Cangiano wrote:
>
>> Ilias Lazaridis wrote:
>>
>>> can someone please post the output of "ri class", thus I can verify
>>> if something has changed?
>>
>>
>>
>> ----------------------------------------------------------- Object#class
>> obj.class => class
>> ------------------------------------------------------------------------
>
> [...]
>
> Thanks - and my apologies!
>
> This seems to be case sensitive.
>
> ri Class (with upper case "C") should bring up another documentation.
>
> may one can post this?
>
> .
>
Hello
This is my output to ri Class
-------------------------------------------------- Class: Class < Module
Classes in Ruby are first-class objects---each is an instance of
class +Class+.
When a new class is created (typically using +class Name ... end+),
an object of type +Class+ is created and assigned to a global
constant (+Name+ in this case). When +Name.new+ is called to create
a new object, the +new+ method in +Class+ is run by default. This
can be demonstrated by overriding +new+ in +Class+:
class Class
alias oldNew new
def new(*args)
print "Creating a new ", self.name, "\n"
oldNew(*args)
end
end
class Name
end
n = Name.new
_produces:_
Creating a new Name
Classes, modules, and objects are interrelated. In the diagram that
follows, the vertical arrows represent inheritance, and the
parentheses meta-classes. All metaclasses are instances of the
class `Class'.
+------------------+
| |
Object---->(Object) |
^ ^ ^ ^ |
| | | | |
| | +-----+ +---------+ |
| | | | |
| +-----------+ | |
| | | | |
+------+ | Module--->(Module) |
| | ^ ^ |
OtherClass-->(OtherClass) | | |
| | |
Class---->(Class) |
^ |
| |
+----------------+
------------------------------------------------------------------------
Class methods:
--------------
new
Instance methods:
-----------------
allocate, inherited, new, superclass
Regards
Gunnar