OOP question

I often see OOP code written as thus:

Shape circle = new Circle();

circle.draw();

or...

Instrument clarient = new Clarinet();

clarinet.play();

The problem I have with this kind of code is that it doesn't accurately describe reality.

In reality, circles do not draw themselves. A shape manager draws a circle.

In reality, clarinets do not play themselves. An instrument manager plays a clarinet.

So wouldn't it be more correct to say -

ShapeManager sm = new ShapeManager();

sm.draw(new Circle());

or...

InstrumentManager im = new InstrumentManager();

im.play(new Clarinet());

Thoughts? Is one style preferable to the other? I am new to OOP.