A、做匀速直线运动的物体机械能不一定守恒,比五:降落伞匀速下降,机械能减小.故A错误.B、做变速直线运动的物体机械能可能守恒.比五:自由落体运动.故B正确.下、外力对物体做功为零时,机械能不一定守恒,比五木块在水平木板上滑动的过程,外力做功为零,但系统的机械能减1.故下错误;D、只有重力对物体做功,物体机械能一定守恒,故D错误;故选:B.