Просто не очень последовательно подходишь к узнаванию. Если ты еще не усвоил, что порядок объявления функций (и методов) не важен, то какие-то глубокие технические штуки можешь понять неправильно. Там же есть еще метаклассы, множественное наследование и проче замечательные инструменты. А тут ты такой не освоив азов начинаешь пользоваться конструктором new, скажем, чем присвоение в питоне отличается от присвоения в Си, и что такое неизменяемые объекты