首页 > 其他分享 >优维低代码实践:父子模型

优维低代码实践:父子模型

时间:2023-10-24 18:04:17浏览次数:31  
标签:继承 子类 代码 父子 实例 优维低 父类 模型 属性

优维低代码实践:父子模型_子类

优维低代码实践:父子模型_父类_02

导语:优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。


优维低代码实践连载第22期

《父子模型》

父子模型详解

什么是父子模型呢?展开程序的角度,我们可以把它理解为父类,子类;子类是继承自父类的,继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。

在我们的领域模型中,我们通常只认为继承是单纯属性方面的继承,并且我们把父类理解为抽象类,我们不允许直接修改父类,而是只能去修改继承于它的子类实例,那么它具体是如何工作的呢?下面请看示例图:

优维低代码实践:父子模型_子类_03

我们设置了几个类:

父类: People, 拥有字段:name, age, sex;

子类 Student 继承自 People,拥有字段: class, score

子类 Teacher 继承自 People,拥有字段:lesson,grade

...

那么根据继承关系,我们可以得知,子类属性继承自父类属性,也就是我获取 Student 子类实例的时候,我其实是可以获取到 name, age, sex, class, score 这几个字段的,其他子类的实例属性获取也是一样。

父子模型的设立,很方便我们统一对某些模型进行字段新增,也就是方便我们后续迭代,维护,我们可以只修改父模型上面的字段属性即可,而不用每个子模型都去修改,省去了重复的工作。

标签:继承,子类,代码,父子,实例,优维低,父类,模型,属性
From: https://blog.51cto.com/u_15605878/8008877

相关文章

  • JS反调试绕过&JS代码混淆&JSFUCK编码
    JS反调试绕过&JS代码混淆&JSFUCK编码如果目标网站的JS代码中有比较机密的东西,会启用反调试,代码混淆这些功能防止泄露机密数据。下面说说几种绕过目标网站JS反调试功能的方法。-禁用断点点击下图那个禁用断点的按钮即可禁止断点过后,大多数情况下可以绕过对方的反调试,但是自己也......
  • c语言代码练习35
    问:判断数组是否是另一个数组的逆转数组#define_CRT_SECURE_NO_WARNINGS1#include<stdio.h>#include<string.h>#include<assert.h>voidMylift(char*left,char*right){assert(left!=NULL);assert(right!=NULL);charrmp=0;while(le......
  • 视觉slam论文、代码汇总
    文章目录2013ARobustandModularMulti-SensorFusionApproachAppliedtoMAVNavigation2021GVINS:TightlyCoupledGNSS-Visual-InertialFusionforSmoothandConsistentStateEstimation2022IC-GVINS:ARobust,Real-Time,INS-CentricGNSS-Visual-InertialNaviga......
  • 《代码大全》阅读笔记03
    第五章:软件构建中的设计1、软件的首要技术使命就是管理复杂度,以简单性作为努力目标的标记方案对此最有帮助。2、好的设计是迭代的,你尝试设计的越多,你的最终方案就会约好。3、隐藏实现、封装变化。 第六章:可以工作的类1、类的接口应该提供一致的抽象。很多问题都是由于违背......
  • c语言代码练习34
    问:将字符串的n个字符左旋例:asdf左旋一个sdfaasdf左旋两个dfas#define_CRT_SECURE_NO_WARNINGS1#include<stdio.h>#include<string.h>voidAyue(char*ar,intk){inti=0;intsz=strlen(ar);for(i=0;i<k;i++){chartmp=*......
  • Unity 跨平台底层如何处理C#代码
    在面试中,我们经常会被问到Unity的底层是如何处理C#,本节给通过一下3个点来给大家详细的分析这个问题:(1)C#的发展历史;(2)Unity为什么用C#;(3)il2cpp解决了什么问题; 对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游戏的零基础小白,也有一些正在从事游戏开发的技术大......
  • 日常有用的代码记录
    快读inlineintread(){intx=0,f=1;charch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}while(ch>='0'&&ch<='9&......
  • 直播系统源代码,修改ToolBar的标题的字体颜色大小
    直播系统源代码,修改ToolBar的标题的字体颜色大小1)、修改ToolBar的标题的字体颜色大小   在style文件上添加 <!--设置Toolbar标题字体的颜色大小--><stylename="Toolbar.TitleText"parent="TextAppearance.Widget.AppCompat.Toolbar.Title">  <itemname="androi......
  • 成品直播源码推荐,用JNI生成so文件,加密解密需要的hascode生成代码
    成品直播源码推荐,用JNI生成so文件,加密解密需要的hascode生成代码try{      PackageInfopackageInfo=getPackageManager().getPackageInfo(getPackageName(),PackageManager.GET_SIGNATURES);      Signature[]signs=packageInfo.signatures; ......
  • 【AGC】崩溃服务符号表不能解析成可阅读代码问题
    ​【关键字】AGC、崩溃服务、符号表 【问题描述】有开发者反馈开通了崩溃服务,然后上传了AppStore版本的iOS符号表,而且也是根据文档步骤上传的。https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-crash-mapping-ios-0000001055140......