题目集6(7-5)主要考察的知识点是抽象类的应用,在题目中Shape 类并不是来描述对象的,所以我们可以将它抽象化。抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。也是因为这个原因,通常在设计阶段...
// Shape.javapublicabstractclassShape{publicabstractdoublecalculateArea();} 1. 2. 3. 4. 创建具体形状类 接下来,我们创建几个具体的形状类,比如Circle、Rectangle、Triangle,这些类都继承自Shape类,并实现calculateArea()方法。 // Circle.javapublicclassCircleextendsShape{privatedoubleradius;publicCircle(doubler...
(2)类:具有相同或者相似性质的对象的抽象就是类。对象的抽象是类,类的具体化就是对象。人类是一个类,那么一个具体的人就是一个对象。 (3)封装:定义一个新类的过程就是封装。 (4)继承:如果人类是一个类,那么男人可以定义为人类的子类,男人这个类可以继承父类。 (5)方法:即类的成员函数。 (6)构造函数:...
13.1 shape 库 345 13.2 canvas 和grid 346 13.3 overlapping 和zindex 348 13.4 polyline 和自定义曲线 349 13.5 cap、join 和dash 354 13.6 polygon 和fill 361 13.7 stretch 属性 363 13.8 动态多边形 364 13.9 path 元素 366 13.10 geometry 和transform 372 13.11 复合...
3.H-shape,描述物体形状的词,还包括Weight(重量) / Length(长度),如round, square, fat, heavy, straight, long, short(圆的,正方形的,胖的,重的,直的,长的,短的)… 4.A-age,描述物体新旧、年龄的形容词,如old, young, new, ancient, antique(老的,年轻的,新的,古老的,年代久远的)… ...
1.定义一个抽象类Shape。 2.定义一个抽象类Animal。 3.编程用用接口封装小狗的状态。 4.编写实现了两个接口的类并在主类中调用相关的方法。 5.编程统计并输出研究生的年收入和学费。 6.计算并输出体操选手和班级的成绩。 实验步骤: 1.定义一个抽象类Shape, ...
3)父类引用指向子类对象:Parent p = new Child(); 3. 多态是如何发生的 ❓ 那么,多态到底是如何发生的?编译器是如何知道父类 Shape 引用指向的是 Circle 而不是 Triangle 或 Square 呢? 首先,我们需要了解静态绑定和动态绑定的概念。什么是「绑定」?将一个方法调用同一个方法主体关联起来的过程就称作绑定。
class Shape { public: Shape(); // 构造函数不能是虚函数 virtual double calcArea(); virtual ~Shape(); // 虚析构函数 }; class Circle : public Shape // 圆形类 { public: virtual double calcArea(); ... }; int main() { Shape * shape1 = new Circle(4.0); shape1->calcArea(); ...
对于静态方法和非静态方法,只需抓住以下几点:(1)静态方法属于类所有,非静态方法属于类定义的对象所有;(2)非静态方法可以访问类中包括静态成员在内的所有成员,而静态方法只能访问类中的静态成员。 【例7-4】 静态方法和动态方法的演示。请观察并分析下列程序的执行结果。(程序代码详见例7-4) [执行结果] 3.参数...
首先我设计了一个抽象的Shape类,在这个抽象类当中,有方法getArea获取图形的面积,validate方法判断图形输入参数是否正确,同时有个tostring方法能够获得图形的名称。之后就是几个具体的图形,圆,长方形,三角形以及梯形,它们需要去继承抽象的图形类。对于这些图形类,我们需要依次去写它们的属性,并且写好属性的setter和getter...