мой вопрос может быть очень простым, но я не понимаю, почему выход такой.модель объекта ruby + создание класса на основе другого класса
MyClass = Class.new String
MyClass.ancestors
=> [MyClass, String, ..]
AnotherClass = Class.new MyClass
=> AnotherClass
AnotherClass.ancestors
=> [AnotherClass, MyClass, String, ..]
в приведенном выше коде, я создаю новый экземпляр класса с именем MyClass и передает объект (все в рубин объект) «Строка» в качестве параметра. Почему «String» встречается в списке предков MyClass. Я не унаследовал MyClass от String, но это то, что, похоже, делает Ruby. Он работает как конструктор копирования, но почему наследование?
спасибо. теперь я понимаю, почему Object является суперклассом по умолчанию. Я думал, что это может быть установка внутреннего указателя в коде cpp, но это установлено в Class.new. еще раз спасибо. –