Encapsulation is possible without inheritance. And "code reuse" is a vague concept that had nothing to do with inheritance in particular.
Not even gonna comment on "message passing".