question about ActiveRecord::Base.reset_subclasses

Which is the purpose of the loops (wrapped to avoid word wrapping)

   klass.instance_variables.each { |var|      klass.send(:remove_instance_variable, var)    }    klass.instance_methods(false).each { |m|      klass.send :undef_method, m    }

in ActiveRecord::Base.reset_subclasses? Why is not enough to remove_const reloadable subclasses?

-- fxn