案例
真题
(2024年上半年)
试题二(25分)
阅读下列说明,回答问题1至问题2,将解答填入答题纸的对应栏内。
【说明】
【说明】
现要求实现一个能够自动生成求职简历的程序。简历的基本内容包括求职者的姓名、性别、年龄及工作经历等。希望每份简历中的工作经历有所不同,并尽量减少程序中的重复代码。
现采用原型(Prototype)模式来实现上述要求,得到如图6-1所示的类图。

【Java代码】
class WorkExperience (1) Closeable { //工作经历
private string workDate;
private string company;
public Object Clone(){
(2) ;
obj.workDate=this.workDate;
obj.company=this.company;
return obj;
}
}
class Resume (3) Closeable { //简历
private string name;
private string sex;
private string age;
private WorkExperience work;
public Resume(string name){
this name=name; work=new SetWorkExperience();
}
private Resume(WorkExperience work){
this work= (4) ;
}
public void SetPersonallnfo(string sex, string age;){ /* 代码略 */ }
public void SetWorkExperience(string workDate, string company){ /* 代码略 */ }
public Object Clone(){
Resume obj= (5) ;
// 其余代码省略
return obj;
}
}
class WorkResume {
public static void main(string[]arg){
Resume a=new Resume(“张三”);
a.SetPersonallnfo(“男”,“29”);
a.SetWorkExperience(“1998~2000”,“XXX公司”);
Resume b= (6) ;
b.SetWorkExperience(“2001~2006”,“YYY公司”);
}
}
【问题1】
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
阅读下列说明,回答问题1至问题2,将解答填入答题纸的对应栏内。
【说明】
【说明】
现要求实现一个能够自动生成求职简历的程序。简历的基本内容包括求职者的姓名、性别、年龄及工作经历等。希望每份简历中的工作经历有所不同,并尽量减少程序中的重复代码。
现采用原型(Prototype)模式来实现上述要求,得到如图6-1所示的类图。

【Java代码】
class WorkExperience (1) Closeable { //工作经历
private string workDate;
private string company;
public Object Clone(){
(2) ;
obj.workDate=this.workDate;
obj.company=this.company;
return obj;
}
}
class Resume (3) Closeable { //简历
private string name;
private string sex;
private string age;
private WorkExperience work;
public Resume(string name){
this name=name; work=new SetWorkExperience();
}
private Resume(WorkExperience work){
this work= (4) ;
}
public void SetPersonallnfo(string sex, string age;){ /* 代码略 */ }
public void SetWorkExperience(string workDate, string company){ /* 代码略 */ }
public Object Clone(){
Resume obj= (5) ;
// 其余代码省略
return obj;
}
}
class WorkResume {
public static void main(string[]arg){
Resume a=new Resume(“张三”);
a.SetPersonallnfo(“男”,“29”);
a.SetWorkExperience(“1998~2000”,“XXX公司”);
Resume b= (6) ;
b.SetWorkExperience(“2001~2006”,“YYY公司”);
}
}
【问题1】
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。