有如下代码: //A.java class A { int x; public A(int x){ this.x=x; } } //B.java class B extends A{ String name; public B(String name){ x=10; this.name=name; } public static void main(String[] args){ B b=new B("tom"); System.out.println(b.name +b.x); } } 以下说法正确的是(). A. 编译B通过,运行B,输出:tom10; B. 编译B通过,运行B失败,因为b.name +b.x中字符串不能与整型相加 C. 编译B失败,因为b.name +b.x中字符串不能与整型相加 D. 编译B失败,因为A中没有无参构造方法