Is initialize method (constructor) private or public in ruby?
class Test def initialize; end end p Test.new.private_methods.sort.include?(:initialize)
initialize is a private method. This makes sense, it is only called by the
new class method if the object is created. If we want, we can do something like this:
class Test def initialize @counter = 0 end def reset! initialize end end
Misusing the constructor like this could however lead to problems if it does more than simple variable initialization.