• 关于 sap.ui.base.Object 的简要介绍


    这是所有 SAP UI5 Object 的基类。

    应用程序中一个使用最广泛的方法:BaseObject.extend

    例如:

    
    var UShellCrossApplicationNavigationMock = BaseObject.extend("sap.ui5.walkthrough.shellMock.UShellCrossApplicationNavigationMock", {});
    
    • 1
    • 2

    这个方法创建一个名为 sClassName 的类 sap.ui.base.Object 的子类,并使用 oClassInfo 中包含的信息来丰富它。

    oClassInfo 输入参数包含的字段名称如下:

    metadata:带有关于类的元数据的(可选)对象字面量。 对象文字中的信息将由 Metadata 的实例包装,并且可能包含以下信息:

    • interfaces::{string[]}(可选)已实现接口的名称集(默认为无接口)
    • publicMethods: {string[]} (可选)应该是类的公共外观的一部分的方法列表
    • abstract:{boolean}(可选)标志,将类标记为抽象(纯信息,默认为 false)
    • final:{boolean}(可选)标志,将类标记为 final(默认为 false)

    constructor:用作新类的构造函数的函数。 如果没有给出构造函数,框架会创建一个默认实现,将其所有参数委托给基类的构造函数。

    • any-other-name: oClassInfo 中的任何其他属性都被复制到新创建的类的原型对象中。 调用者因此可以向类的所有实例添加方法或属性。 但请注意,给定值在类的所有实例之间共享。 通常,除了声明公共常量外,在这里使用原始值是没有意义的。

    如果这样的属性有一个函数作为它的值,并且如果属性名称不是以下划线开头或不带有前缀“on”,则该属性名称将自动添加到类的公共方法列表中。 如果方法的名称与该模式匹配,但并不意味着公开,则不应将其包含在类信息对象中,而应将其分配给原型。

    新创建的类的原型对象使用与基类实例相同的原型(原型链)。

    即使 oClassInfo 对象中没有元数据条目,也会始终创建元数据对象。 元数据的 getter 始终附加到原型和类(构造函数)本身。

    最后但同样重要的是,使用第三个参数 FNMetaImpl 可以指定元数据类的构造函数。 该类的实例将用于表示新创建的类和从它创建的任何子类的元数据。 通常,只有框架会使用这个参数来丰富他们引入的新类层次结构的元数据。

  • 相关阅读:
    【软考-中级】系统集成项目管理工程师-进度管理-关键路径法
    Redis与分布式-主从复制
    聊聊ThreadLocal(一)
    【Image captioning】ruotianluo/self-critical.pytorch之3—测试脚本test.py
    每日一题——替换空格
    Windows Server AD域控 WUSU补丁服务器
    读高性能MySQL(第4版)笔记07_优化数据类型(下)
    汇编语言(5)寄存器(内存访问)
    SpringAMQP WorkQueue消息队列模型的理解与使用
    MyBatis
  • 原文地址:https://blog.csdn.net/i042416/article/details/126885103