当前位置: 首页 > news >正文

重庆做网站推广软件技术专业主要学什么

重庆做网站推广,软件技术专业主要学什么,如何做网站主页,网站不备案可以使用么钻石继承问题#xff08;Diamond Inheritance Problem#xff09; 主要是指在多重继承中#xff0c;由于继承关系的复杂性#xff0c;子类可能通过多个路径继承到相同的基类#xff0c;从而导致成员的多份副本或者方法调用的二义性。 C 通过 虚拟继承 来解决这个问题Diamond Inheritance Problem 主要是指在多重继承中由于继承关系的复杂性子类可能通过多个路径继承到相同的基类从而导致成员的多份副本或者方法调用的二义性。 C 通过 虚拟继承 来解决这个问题以确保子类只继承到一份基类的实例。Java 通过禁止类的多重继承来完全避免这个问题同时使用 接口 提供行为扩展的机制。接口的多重实现不会导致状态冲突因此避免了钻石继承的复杂性。 结构 在钻石继承问题中继承结构的形状像一个钻石通常涉及如下的情况 顶部有一个基类称为 A。接下来有两个类 B 和 C它们都继承了 A。最后有一个类 D它同时继承了 B 和 C。 这种继承关系就形成了一个钻石的形状 A/ \B C\ /D在这个结构中类 D 通过 B 和 C都继承自 A因此可能会从 A 中继承两次导致一些问题。 典型问题 多次继承同一父类类 D 从 A 类间接继承了两次因此会产生模糊类 D 中实际上应该有一份 A 的成员还是两份例如类 A 中定义了一个字段 value那么 D 类中是否会有两个 value 字段 方法调用的歧义如果类 A 有一个方法 someMethod()那么在 类 D 中调用该方法时编译器无法确定调用来自 B 的版本还是来自 C 的版本产生二义性。 数据冗余与不一致如果父类中有可修改的状态如字段在多重继承情况下可能会出现状态不一致的问题因为子类会继承多个相同的字段这些字段可能会被不同路径修改从而引发不一致的状态。 解决方法 不同的编程语言对钻石继承问题有不同的解决方案 C 中的虚拟继承 在 C 中可以通过 虚拟继承virtual inheritance 来解决钻石继承问题。当 B 和 C 类继承 A 类时使用虚拟继承确保在最终的子类 D 中只存在一份 A 类的实例。这样可以避免 类 D 继承两份 A 类的成员变量和方法。 示例 class A { public:void display() {std::cout As display std::endl;} };class B : virtual public A {}; class C : virtual public A {}; class D : public B, public C {};int main() {D obj;obj.display(); // 调用 A 的 display 方法没有二义性return 0; }在上述代码中通过虚拟继承类 D 最终只会有一份 A 类的实例。 Java 中的设计避免 在 Java 中为了避免多重继承带来的复杂性和钻石继承问题Java 不允许类的多重继承。Java 中的类只能继承一个父类。Java 通过 接口interface 来解决行为扩展的问题因为接口不包含任何状态只定义方法的规范因此即使一个类实现了多个接口也不会有状态冲突的问题。 例如 interface A {void someMethod(); }interface B extends A {} interface C extends A {}class D implements B, C {Overridepublic void someMethod() {System.out.println(Ds implementation of someMethod);} }public class Main {public static void main(String[] args) {D obj new D();obj.someMethod(); // 这里没有二义性} }在 Java 中接口只是定义行为规范没有具体实现和状态因此不存在 “多重继承” 中的二义性问题类 D 实现了两个接口 B 和 C而它们都继承了接口 A依然可以顺利工作因为 Java 只需要实现一个 someMethod() 即可。
http://www.w-s-a.com/news/471090/

相关文章:

  • 深圳企业网站怎么做浪琴手表网站建设图
  • 2018网站外链怎么做济南 网站设计公司
  • 承德百度网站建设郑州网站seo优化公司
  • 四川建站模板网站公司分类信息网站制作
  • 网站开发前后端有wordpress模板安装教程视频教程
  • 有网站想修改里面的内容怎么做怎么做黑彩黑彩网站
  • 什么专业会做网站网站建设续费合同
  • 网站开发的项目开发网站做直播功能需要注册吗
  • 网站开发新手什么软件好网站设计师和ui设计师
  • 太仓苏州网站建设软件开发网站建设
  • 一个虚拟主机做2个网站吗工信部怎么查网站备案
  • 本地网站做淘宝客制作app步骤
  • 关于企业网站建设网页布局怎么设计
  • 惠州市网站设计公司裴东莞嘘网站汉建设
  • 长葛网站建站电子商务网站是什么
  • 泉做网站的公司太原网站建设开发公司
  • wordpress菜单栏的函数调用迅速上排名网站优化
  • 网站深圳广西模板厂哪家价格低
  • 搜索网站显示网页无法访问最好的网站推广
  • 巴彦淖尔市百家姓网站建设搬瓦工暗转wordpress
  • 温州鹿城区企业网站搭建云虚拟机
  • 网站的开发方法php网站商城源码
  • 旅游找什么网站好维护公司网站建设
  • 长春市长春网站制作站优化杭州企业推广网站
  • 网站建设开发设计营销公司山东网信办抓好网站建设
  • 斗图在线制作网站搜索关键词优化
  • 大连 网站建设 有限公司十大erp系统
  • 网站后台建设软件网络营销公司招聘
  • 做网站销售电销好做吗网站开发毕业设计代做
  • 成都学网站建设费用帝国cms与wordpress