C++三种继承

private:只能由1.该类中的函数、2.其友元函数访问。

不能被任何其他访问,该类的对象也不能访问。

protected:可以被1.该类中的函数、2.子类的函数、3.其友元函数访问。

但不能被该类的对象访问。

public:可以被1.该类中的函数、2.子类的函数、3.其友元函数访问,也可以由4.该类的对象访问。

可以看到基类的private成员,无论用何种继承方式,派生类都无法使用。

从另一方面来说,如果使用private继承方式,父类的成员只能被继承一次,再继续继承,父类的成员就不可见了

时间: 2025-01-13 05:14:08

C++三种继承的相关文章

js oop中的三种继承方法

JS OOP 中的三种继承方法: 很多读者关于js opp的继承比较模糊,本文总结了oop中的三种继承方法,以助于读者进行区分. <继承使用一个子类继承另一个父类,子类可以自动拥有父类的属性和方法.(继承的两方,发生在两个类之间)> 一.通过object实现继承 1:定义父类 function Parent(){} 2:定义子类 funtion Son(){} 3:通过原型给Object对象添加一个扩展方法. Object.prototype.customExtend = function(p

js的三种继承方式及其优缺点

第一种,prototype的方式: //父类 function person(){ this.hair = 'black'; this.eye = 'black'; this.skin = 'yellow'; this.view = function(){ return this.hair + ',' + this.eye + ',' + this.skin; } } //子类 function man(){ this.feature = ['beard','strong']; } man.pr

C++的三种访问权限与三种继承方式

三种访问权限 我们知道C++中的类,有三种访问权限(也称作访问控制),它们分别是public.protected.private.要理解它们其实也很容易,看下面了一个例子. 父类: class Person { public: Person(const string& name, int age) : m_name(name), m_age(age) { } void ShowInfo() { cout << "姓名:" << m_name <&l

三种继承方式和三种访问权限

 也就是说子类只能访问父类的保护和公有成员,而对象只能访问公有成员. 继承方式 1. 三种继承方式不影响子类对父类的访问权限,子类对父类只看父类的访问控制权.     2. 继承方式是为了控制子类(也称派生类)的调用方(也叫用户)对父类(也称基类)的访问权限. 3. public.protected.private三种继承方式,相当于把父类的public访问权限在子类中变成了对应的权限. 如protected继承,把父类中的public成员在本类中变成了protected的访问控制权限:priv

C++三种继承方式

一.三种继承方式 继承方式不同,第一个不同是的是派生类继承基类后,各成员属性发生变化.第二个不同是派生类的对象能访问基类中哪些成员发生变化.表格中红色标注. 1 #include <iostream> 2 using namespace std; 3 4 class A 5 { 6 private: 7 int i; 8 protected: 9 int j; 10 public: 11 int k; 12 }; 13 14 class B:public A 15 { 16 17 }; 18

C++中的三种继承方式

1,被忽略的细节: 1,冒号( :)表示继承关系,Parent 表示被继承的类,public 的意义是什么? 1 class Parent 2 { 3 4 }; 5 6 class Child : public Parent 7 { 8 9 }; 2,有趣的问题: 1,是否可以将继承语句中的 public 换成 protected 或者 private?如果可以,与 public 继承有什么区别? 3,有趣的尝试编程实验: 1 #include <iostream> 2 #include &l

C++中三种继承方式的区别

本文来自https://zhidao.baidu.com/question/159111767.html  详细说明了三种继承方式的区别,好文 还可参考另一篇文章: https://blog.csdn.net/one_super_dreamer/article/details/81611118 https://blog.csdn.net/u011857683/article/details/82120998 public公有继承 protected保护继承 private私有继承 我们知道类的p

drf 视图的三种继承

视图的方法(继承) 第一种:原始APIView 需要自己写get/post方法. url(r'^login/$',account.LoginView.as_view()), from rest_framework.views import APIView from rest_framework.response import Response from rest_framework_jwt.settings import api_settings from rest_framework.thro

C++中的类继承(1) 三种继承方式

继承是使代码可以复用的重要手段,也是面向对象程序设计的核心思想之一.简单的说,继承是指一个对象直接使用另一对象的属性和方法.继承呈现了 面向对象程序设 计的层次结构, 体现了 由简单到复杂的认知过程.C++中的继承关系就好比现实生活中的父子关系,继承一笔财产比白手起家要容易得多,原始类称为基类,继承类称为子类,它们是类似于父亲和儿子的关系,所以也分别叫父类和子类.继承的方式有三种分别为公有继承(public),保护继承(protect),私有继承(private).定义格式如下: 1. 公有继承

Hibernate之jpa实体映射的三种继承关系

在JPA中,实体继承关系的映射策略共有三种:单表继承策略(table per class).Joined策略(table per subclass)和Table_PER_Class策略. 1.单表继承策略 单表继承策略,父类实体和子类实体共用一张数据库表,在表中通过一列辨别字段来区别不同类别的实体.具体做法如下: a.在父类实体的@Entity注解下添加如下的注解: @Inheritance(Strategy=InheritanceType.SINGLE_TABLE)@Discriminator