问题标签 [late-binding]

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.

0 投票
3 回答
669 浏览

java - 为什么这个 Java 方法是通过声明的类型而不是运行时类型来多态的?

这段代码:

产生这个输出:

我可以很清楚地看到,Task 的方法被选择了 Action 的方法。不过,我不明白为什么,因为对象总是知道它们是什么,而且我认为 Java 的后期绑定方法选择能够区分方法签名的差异。调用 tobar()尤其令人困惑,因为此时task声明为 an Action

如果它有所作为,那就是 Java 6:

我可以更改我的代码以使其工作,但我想了解它为什么不起作用。谢谢您的帮助!

0 投票
1 回答
1178 浏览

vba - 将早期绑定代码转换为后期绑定

我经常在 VBA 和 VB6 中编写早期绑定代码来自动化办公应用程序(Word、Excel 等),然后将其切换到后期绑定以处理这些应用程序的多个版本。我正在尝试做同样的事情,但我正在自动化 ESRI ArcMap GIS 应用程序,而我过去使用的概念似乎没有被翻译。


以下代码正确运行:


但是这段代码失败了,对象不支持这个属性或方法Debug.Print行了:

MS Office 应用程序有什么特别之处,它们通常比 COM 服务器更好地支持这种方法吗?或者他们不支持这种方法的 ESRI 应用程序有什么特别之处?

0 投票
1 回答
990 浏览

c# - Unity 中 RegisterInstance 的后期绑定版本

在我们的项目中,我们使用 Unity 作为依赖注入框架。现在我面临一种情况,我需要一个后期绑定版本的IUnityContainer.RegisterInstance().

在 ninject 中,我正在尝试执行的代码如下所示:

然而,在 Unity 中,到目前为止,我还没有找到这样做的方法。

我需要这个的原因是,当时IMyInterface还没有创建 Instance,绑定发生了,Unity 也没有处理对象的创建(我不能很快替换它)。

0 投票
1 回答
1509 浏览

c# - 使用 .NET 后期绑定 Excel

我需要在 Word 文档中为我的“书签”添加值。我确实需要使用后期绑定来实现这一点。

我已经提取了书签,但是如何更改值?

0 投票
1 回答
1059 浏览

c# - 如何利用 C# 属性和反射在标记对象上注入/强制后期绑定?

我喜欢设计模式,问题是有些实现起来真的很乏味。例如,装饰一个有 20 多个成员的对象就很烦人。

因此,我想创建一个很好的设计模式库以应用于类(作为基类或属性),以使这些模式的实现更快、更容易。

问题是......我不太确定从哪里开始 - 因为我大多不熟悉属性和反射。


我想利用属性来标记 Singletons(类似于 Export 标签)、Multitons 和 Decorators...如果可能的话。但我什至不知道从哪里开始创建一个改变其实例功能的单例属性。

我有限的研究使我相信,通过属性使用反射/后期绑定并获得对程序集中所有标记类的访问权限,将允许您将一个单例组合在一起......但我仍然不完全确定这将如何做完了。

我发现的一个名为Ninject 1.0 的框架创建了一个 Singleton 属性 - 但该库是如此广泛且未记录,以至于我目前无法遵循它的逻辑。


我觉得具有这种功能的库将对那里的许多开发人员做出巨大贡献。因此,如果有人可以提供一些示例代码,让我指出正确的方向来创建这些模式之一作为属性,将不胜感激 - 其代码没有过度涉及。或者,如果有人愿意带我完成 Ninject 的单例属性实现,那么我可以解决这个问题......

感谢您的时间和考虑。

0 投票
2 回答
1457 浏览

c# - 在后期绑定 MS Word 的表中添加一行

我确实需要在晚期有界 MS Word 的表格中添加一行。请在此处查看我的代码...

在代码上,您可以看到我必须为 function 实现代码public void AddNewRow(int tableId)

在这里,我确实需要添加一个新的 BLANK 行,因为我要添加到表中的行数取决于 DataSet。

知道该怎么做...?如果你能分享代码就更好了...

(其他领域的代码运行良好)

我正在使用 .Net 2.0 版

0 投票
2 回答
2041 浏览

javascript - JavaScript 函数调用是通过原型还是直接引用更快?

在 JavaScript 中,假设我想从 bObj 内部调用 aObj.myMethod()。在我的应用程序中,从设计的角度来看,aObj 是 bObj 的基类。JavaScript 是一种后期绑定语言,这意味着 myMethod 应该在运行时解析。函数解析是否更快

////////// 如果

1-我很自然地使用我的设计并说 bObj.prototype=aObj 然后在运行时我调用 bObj.myMethod:

////////////////////////或者

2- 通过原型的函数解析可能很慢,所以我将 aObj 作为属性保留在 bObj 中,并从 bObj 内部调用 aObj.myMethod()


我主要关心的是执行速度。在我的应用程序中,myMethod 每秒被调用数百万次。我知道大多数浏览器都会缓存指向最近调用的函数的指针,因此在这两种情况下,函数解析过程都会加快速度。然而,任何人都可以提供有关这两种情况下函数解析机制的更多细节,并提供一些见解,即哪种方法可能更快?解析机制在所有浏览器中都相同还是完全依赖于浏览器?

0 投票
8 回答
14510 浏览

php - 获取实例的静态属性

如果我在 PHP 中有一个实例,那么获取该实例的静态属性(“类变量”)的最简单方法是什么?

听起来真的过分了。我希望

或者

编辑:这是一个老问题。在较新的 PHP 中有更明显的方法可以做到这一点,请在下面搜索。

0 投票
1 回答
442 浏览

delphi - 如何访问后期绑定的嵌套属性和方法?

我想知道当要访问的属性嵌套在另一个属性中时,从 Delphi 访问后期绑定属性或方法的正确方法是什么。让我解释。

检查此示例应用程序以检查防火墙是否处于活动状态,声明的 3 个函数使用HNetCfg.FwMgrCOM 对象并返回相同的值。

我问这个问题是因为我想知道 Delphi 编译器是否能够生成代码以在 3 个函数的任何情况下处理 olevariants?

0 投票
2 回答
993 浏览

c# - 使用后期绑定获取 UsedRange

我正在尝试在具有任何版本的 Excel 的任何 PC 上使用后期绑定到我的应用程序工作。

所以我正在阅读并尝试实现我看到的示例,但这太令人困惑了。

我成功创建实例并成功打开文件,但是我如何获得 UsedRange?

我的代码:

然后我怎样才能得到一行,然后逐个单元格?

提前致谢!