继承能将定义的新类包含有已有类的所有属性,这样能实现很多新的功能,实际运用上也更加方便。
已经存在的类叫做基类或父类,新建立的类叫做子类或派生类。一些概念:单继承(single inheritance)、多重继承(multiple inheritance)。直接继承,间接继承。继承具有传递性和非对称性。
一、定义方法和派生类的构成
单继承: class 类名: 继承方式 基类名 { ...... }; 多重继承: class 类名: 继承方式 基类名1,继承方式 基类名2...... { ...... };
继承方式有public, private和protected。
构成时三步走:
①接受基类成员。除构造函数和析构函数,全盘接受。所以要精心设计以免浪费空间。
②改造基类成员。如建立一个与基类中的成员函数名字、类型、参数表一模一样的函数等等。
③添加新的成员。添加自己的成员。
二、继承中的访问控制
1、公有继承 public
这种继承建立起来的派生类称为公用派生类,基类称为公用基类。
至于访问权限,我觉得用书上这个图、表格挺好的。
在派生类中,私有的(连派生类)也不可以访问,公有还是公有,保护还是保护。
其中protect成员是只允许基类和派生类使用的,也就是说可以给它们的家族用,但是private就只能自己用,派生类也不能用。
2、私有继承 private
对应的,私有派生类,私有基类。
3、保护继承 protected
对应的,保护派生类,保护基类。
主要体现在间接派生类上。间接派生类可以访问它上一级的protected成员,所以protected继承过来的基类成员也可以使用。
时间: 2024-11-05 16:00:57