Michael Neumann
1/24/2005 12:02:00 PM
Stephan Kämper wrote:
> Hi all,
>
> before I go ahead and post my proposal directly to the FAQ site, I
> though I'd better share the proposal here...
>
> I tend to add this question, as it regularly is touched here in
> discussions and questions:
>
> What's with 'overloading' and 'overriding' methods in Ruby? And what's
> the difference between them anyway?
Overloading usually means in C++ or Java:
void my_method();
void my_method(int arg);
void my_method(int arg, char* x);
I.e. static polymorphism based on method signatures (the matching method
is found at compile time, hence "static").
In Ruby, we don't have this kind of polymorhphism. Okay we can emulate
this using:
def my_method(*args, &block)
end
But, I don't count this.
Overriding is probably another term for "overwriting" a method. That's
simply if you redefine a method.
Regards,
Michael