A-A+

给出下列的不完整的类代码 则下列的哪个语句可以加到横线处? class Person { S

2022-08-06 03:06:42 问答库 阅读 175 次

问题详情

给出下列的不完整的类代码,则下列的哪个语句可以加到横线处? class Person { String name,department; int age; public Person(String n ){ name = n;} public Person(String n,int a ) { name = n;age = a;} public Person(String n,String d,int a ) { _____________ department = d; } }
A.Person(n,a);
B.this(Person(n,a) );
C.this(n,a);
D.this(name,age);请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:C
解析:在同一个类的不同构造方法中调用该类的其他构造方法需要使用this(…)的形式,而且必须是在构造方法的第一行调用,这个和普通方法重载调用的方式不同,普通方法可以直接使用方法名加参数来调用,而且调用位置没有限制,因此选项A)是不行的,选项B)的语法就是错误的,选项D)的错误在于在父类型的构造方法被调用前不能引用类的成员。构造方法是一个类对象实例化的开始,因此在构造方法中不能将成员作为参数引用。

考点:横线,语句