问题标签 [extending-classes]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 扩展 Python 类时更新静态变量
我正在编写一个库的扩展,我想用基类中的函数指针字典注册我的新函数。我的理解是字典,因为它在一个类中的最高范围,是静态的,应该是可更新的。但是,当我尝试update()
使用扩展类中的新函数查找字典时,它告诉我它是未定义的。以下最小示例重现了该错误:
运行它会出现以下错误
由于我不能(合理地)修改原件SomeClass
,有什么办法可以解决这个问题吗?
SomeExtensionClass
编辑:期望的结果是dictionary={'a':somefunction1, 'b':somefunction2}
java - (Java,Bukkit)使用扩展类方法不起作用(Noob oop)
我有一个名为“区域”的类,它创建区域并检查坐标是否在其中。然后我有其他类'ArrowTower'扩展'Region'。'ArrowTower' 类创建塔。我整天都在试验,没有结果。我想要做的是将第一个和第二个位置分配给“区域”类,然后创建区域并检查坐标是否属于它。我也有事件 - 'BlockTouch' 类创建 'ArrowTower' 对象。当我尝试它时,tower.insideRegion(e.getClickedBlock());
它给了我我的位置然后归零,因为它没有在 中设置值public void buildArrowTower
,但值就在这里。所以我只是不明白为什么这不起作用:/
我的活动课程:
我的 Region.class:
我的 ArrowTower.class:
php - 线程环境中的PHP错误将值分配给同一线程中的父静态成员?
我有这个问题,我想知道它是 PHP 错误还是故意行为。如果我在子类中将 MySQL 资源分配给父成员,则在作为线程运行时该值会丢失。
此代码不运行 - MySQL 资源应显示两次:
这是结果 - “从父级访问的成员: ”的预期输出应该类似于“资源 id#2 ”:
我必须更改它,然后成员$m_Connection
从fopen()
. 注意:它正在线程中工作!
输出:
运行示例的要求:
- 使用启用的线程安全编译的 PHP
- 使用 pThread 库编译的 PHP
我必须根据这篇文章在线程中连接到 MySql:http: //php.net/manual/en/intro.pthreads.php
更新:
我更改了代码:它正在打开/etc/php.ini
而不是连接到 MySql 数据库。相同的结果 --> 从扩展类返回资源时它会丢失。这些示例现在以 1:1 的比例运行,无需更改/调整任何内容。
java - Java中通过基类工厂初始化扩展类
这是我在这里的第一个问题,所以如果有问题请不要生我的气。
问题是:我们有类节点。它是 Item 类的基类。所以基本上:
好的,仍然一切都很好。但是我们也有一个类,我们称之为 NodeFactory,它包含静态方法 loadNodeAssets 作为结果返回 Node。
在我使用的库中,它是初始化 Node 类并将资产加载到其中的唯一方法。但主要问题是我需要获取 Item 类实例而不是 Node。我怎么能做到呢?
由于返回类的类型为节点但不是项目,因此无法正常工作。基本上我需要构造 Fish 类并初始化 Fish 类扩展的 Node 类中的继承字段。对不起我的英语不好。希望得到您的帮助。谢谢!
php - 为什么我的设置器没有警告无法设置属性?
在课堂a
上我有一个setter
定义。在b
扩展类的 classa
中,有一个private
变量,因此该类a
将无法看到。此代码中的setter
in 类a
永远不会将变量设置为test
不同于初始值的值,因为它无法访问它。如果您运行此代码,对于案例 A,它将输出0
.
但是,如果您运行案例 B,您将得到一个Exception
说法,即该属性test2
不存在。
我的问题是,如果类a
实际上没有看到变量test
并且无法设置它的值,为什么我不会收到任何类型的错误、异常、警告甚至是一点点通知?
这是我在一个真实项目中刚刚发生的情况,由于没有生成错误并且代码在逻辑上看起来正确,因此很难找到。那么如何防止以后再犯这种错误呢?
php - Laravel 5 - 扩展抽象提供者
我正在尝试扩展 Laravel\Socialite\Two\AbstractProvider,但我不确定在 Laravel 中执行此操作的最佳/正确方法是什么。阅读文档让我相信我应该在服务提供商那里做这件事。
任何帮助都会很棒,这是我为服务提供商提供的代码:
SocialiteServiceProvider.php
然后我有第二个文件
SocialiteAbstractProvider.php
我也已将其正确添加到我的配置中,因为我能够看到注册事件。
php - 扩展包模型
我已经安装了 Cmgmyr\Messenger,但是,我需要扩展 Thread 模型和可能的其他几个模型,因为我的 users 表不包含name
字段。
我需要扩展的方法是:
注意到 users.name 文件被调用了吗?这是需要更改为 username 甚至更好的 users.firstname 和 users.lastname 一起的内容。
我需要将其扩展到以下结构:
我该怎么办?
wordpress - Woocommerce - 尝试将产品数据与自定义表中的数据合并
我有几个自定义表,我正在使用带有树枝的高级自定义字段 (acf)。这些字段存储在自定义表中。
例如:
custom_table1
, custom_table2
,custom_table1_table2_relation
等等。
它们可以在管理产品面板中进行编辑,并显示为与产品数据相关的对象。现在我将它们合并到一个关联数组中。
我有这个:
我喜欢这个:
我试图扩展一个 WC_Class 并创建一个动作来在前面调用这些
这只是一个片段示例
但我不明白。我有点乱
c# - 调用父构造函数的最简单方法
我正在使用一个公共实体框架, ParentClass
它function
通过搜索配置和数据库条目来做很多重要的事情,并且无法编辑此代码,因为它来自第三方。但是,我想function
在ParentClass
无法访问的白名单信息上添加额外的“搜索”。
下面的代码是正在发生的事情的模型。我只是想知道,有没有更好的方法来扩展ParentClass
和访问它function
c# - 无法从
我在 DatabaseLayer 中有这四个类:
MediaSharing 中的三个类:
当我尝试做
和
它返回 参数 1:无法从 'DatabaseLayer.MessageDoa' 转换为 'DatabaseLayer.MediaDoa' Domain ......
和
参数 1:无法从 'DatabaseLayer.MessageDoa' 转换为 'DatabaseLayer.TextDoa' Domain ......
但是 MediaDoa 和 TextDoa 使用 MessageDoa...