多做题,通过考试没问题!

程序设计教程

睦霖题库>大学试题(计算机科学)>程序设计教程

下面的设计有什么问题?如何解决?

正确答案: Square不能以public继承方式继承Rectangle类,否则,Rectangle的所有public成员函数就能被Square类的对象访问,特别地,当用set_width和set_height分别对Square类的对象进行操作时,就可能破坏Square类对象的长、宽相等的特性。
解决办法是:把Square定义成以protected或private方式从Rectangle继承。为了能对Square类的对象访问Rectangle中定义的area和print,可在Square类中加上对Rectangle类成员的访问控制调整声明:
答案解析:
进入题库查看解析

微信扫一扫手机做题