代码如下,运行结果如图所示。
class Student{
String name;
int age;
String banJi;
String major;
String xueYuan;
public Student(String name,int age,String banJi,String major,String xueYuan){
this.name=name;
this.age=age;
this.banJi=banJi;
this.major=major;
this.xueYuan=xueYuan;
}
@Override
public String toString()
{
return "姓名:"+this.name+", 年龄:"+this.age+", 班级:"+
this.banJi+" ,专业:"+this.major+", 所属学院:"+this.xueYuan;
}
public void Printiofo(){
System.out.println(this.toString());
}
}
public class Practice
{
public static void main(String args[]){
Student student=new Student("张三",19,"2019级2班","网络工程","网络与通信学院");
student.Printiofo();
}
}
答案应该选择C。原因如:1、类之间的转换要求来之间具有继承(extends)或实现(implements)关系,A和B的期望实现的功能等价但编译错误;2、new 关键字有两个功能实例化一个对象、分配内存,因此它要求后面只能跟一个可实例化的类。接口不能实例化,因此B项错误。3、C的写法合乎Java语法且能编译成功。
C 是对的,A 、B 、 D错误的,Animal cat = new Dog()
接口不能实例化,用接口的实现类可以实例化,将实现类的对象在内存中的地址指向接口,这个接口就可以使用了;Cat cat = new Animal(); 你可以在程序里面试试应该是报错的
选C是正确的。
Dog和Cat不存在父类子类关系,Animal是接口;
就是C 楼主 这个问题你不知道你完全可以敲出来运行下就知道了 相信比我们告诉你效果好多了