Shape, MovieClip or Sprite?!

Take a look at the code below:
[AS]
//var frame:Shape = new Shape();
//var frame:Sprite = new Sprite();
var frame:MovieClip = new MovieClip();
frame.graphics.lineStyle(4, 0x333333, 1, true);
frame.graphics.drawRoundRect(0, 0, 200, 200, 9);
frame.graphics.endFill();
frame.x = 50;
frame.y = 50;

addChild(frame);
[/AS]

This ‘frame’ can be created as a Shape, Sprite or MovieClip. In this case, are there any different between those? Better performance? In what case should I use this and in what case that? :huh: