在一个类中调用另一个类的构造函数。

publicStudent(Stringname,intage,Stringclasser,Scorescore),当对Student类的构造函数进行调用时要怎么对sco... public Student(String name,int age,String classer,Score score),
当对Student类的构造函数进行调用时要怎么对score赋值?

public class Score {

double math;
double chinese;

public double getMath() {
return math;
}
public void setMath(double math) {
this.math = math;
}
public double getChinese() {
return chinese;
}
public void setChinese(double chinese) {
this.chinese = chinese;
}

}
展开
 我来答
CodeBlove
推荐于2017-11-26 · TA获得超过3364个赞
知道小有建树答主
回答量:936
采纳率:79%
帮助的人:246万
展开全部
不要这么规划,类的有参构造函数用来接收数据初始化类成员的,不要反过来去赋值形参,虽然形参通过引用可以赋值,但是这种规划会造成逻辑不清,流程混乱,实际上是你把顺序弄反了。

想必你的student类包含姓名、年龄和分数,而分数又包含各类学科,这些对象或信息属于student的属性,而student本身是个关于"学生"的数据对象,学生对象不应该负责其成员对象的赋值工作。这些工作应该由与学生管理业务相关的代码完成,类的工作只赋值维护自己相关的数据访问(读取和设置以及相关事务处理),但不负责数据来源。

Score负责保存和提供学科分数,本身也不应该负责数据来源,而是由管理科目学分的业务代码赋值,然后传递给student类的对象。

也就是说,student对象创建之前先要通过学分管理程序得到Score对象,以及学生管理代码获得姓名、年龄等数据,然后通过student的构造函数创建student对象。而不是让student去赋值给Score对象。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友af949a9
2019-01-15
知道答主
回答量:32
采纳率:50%
帮助的人:2万
展开全部
class bb
{
public:
bb() { m_a = 1; m_b = 1; }
bb(int i_a, int i_b) { m_a = i_a; m_b = i_b; }
private:
int m_a;
int m_b;
};
class aa
{
public:
aa(){ m_a = 1; m_b = 1; }
aa(int i_a,int i_b):m_a(i_a), m_b(i_b), m_c(i_a,i_b){}
private:
int m_a;
int m_b;
bb m_c;
};
int main()
{
aa a(20,20);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式