.定义- 一个 Student 类,包括性别、 年龄、班级等属性,其中年龄是 私有属性;提供包括获取年龄、获取专业、学习的公有方法。定义 二个继承自 Student 的子类:工科学生 GongkeStudent、 艺术生 rishuStudent, 拥有专业、宿舍楼栋的属性,同时覆盖父类中 Student 的学习方法,工科生学习方法输出: “ 勾广三,股修四,经隅五” 文科生学习方法输出:“鸟鸣话落处,曲罢对春风“
时间: 2023-04-01 19:03:47 浏览: 124
好的,我可以回答这个问题。以下是定义一个 Student 类,包括性别、年龄、班级等属性,其中年龄是私有属性;提供包括获取年龄、获取专业、学习的公有方法的代码:
```
class Student {
private:
int age;
string gender;
string className;
public:
Student(int a, string g, string c) {
age = a;
gender = g;
className = c;
}
int getAge() {
return age;
}
string getClassName() {
return className;
}
virtual void study() {
cout << "学习" << endl;
}
};
```
接下来是定义两个继承自 Student 的子类 GongkeStudent 和 RishuStudent,拥有专业、宿舍楼栋的属性,同时覆盖父类中 Student 的学习方法,工科生学习方法输出:“勾广三,股修四,经隅五” 文科生学习方法输出:“鸟鸣话落处,曲罢对春风”的代码:
```
class GongkeStudent : public Student {
private:
string major;
string dormitory;
public:
GongkeStudent(int a, string g, string c, string m, string d) : Student(a, g, c) {
major = m;
dormitory = d;
}
string getMajor() {
return major;
}
string getDormitory() {
return dormitory;
}
void study() {
cout << "勾广三,股修四,经隅五" << endl;
}
};
class RishuStudent : public Student {
private:
string major;
string dormitory;
public:
RishuStudent(int a, string g, string c, string m, string d) : Student(a, g, c) {
major = m;
dormitory = d;
}
string getMajor() {
return major;
}
string getDormitory() {
return dormitory;
}
void study() {
cout << "鸟鸣话落处,曲罢对春风" << endl;
}
};
```