设类B和类C都不是抽象类,且类B是类C的父类。下列声明对象x1的语句中不正确的是?
A B x1=new B();
B B x1=new C();
C C x1=new C();
D C x1=new B();