问题标签 [private-methods]

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 投票
4 回答
3831 浏览

javascript - 在 Javascript 中访问内部函数变量

在许多框架中,内部函数变量被用作私有变量,例如

在这里,我们无法从全局命名空间访问名为 的变量private,因为它是第一行中匿名函数的内部变量。

有时这个函数包含一个大的 Javascript 框架,所以它不会污染全局命名空间。

我需要对Raphael内部使用的某些对象进行单元测试(在上面的示例中,我希望对对象运行单元测试private)。我该如何测试它们?

编辑:我收到了关于应该测试公共接口的单元测试的评论。

让我指定一个用例。我正在编写一个名为Raphael. 这个库应该只向全局命名空间添加一个名称,仅此而已。这是 Javascript 的特殊要求,因为 Javascript 没有命名空间。

假设Raphael使用链表。如果 Javascript 有包的概念,我会做

但是,Javascript 不允许我以任何不会污染链表对象的全局范围的方式来执行此操作!因此,我必须内联linked_list到 Raphael 的本地范围:

现在我想测试linked_list实现。

0 投票
6 回答
307 浏览

c++ - 如何使用复制构造函数和复制赋值为私有的对象?

在阅读TCPL时,我遇到了一个问题,正如标题所指的那样,然后“私人”课程是:

使用代码是:

我想执行这样的操作:

虽然,这些代码来自 TCPL,但我仍然无法得到解决方案......任何人都可以帮助我,不胜感激。

0 投票
2 回答
545 浏览

php - 是否可以使用类的静态私有方法作为回调?

我看到包含以下行的代码:

哪里TextileParser::replaceAnchor()是私有静态方法。

0 投票
4 回答
125404 浏览

python - Python 中的私有变量和方法

可能重复:
Python中对象名称前的单下划线和双下划线的含义

对于 Python 中的私有成员和方法,我应该使用哪个_foo(下划线)或(双下划线)?__bar

0 投票
1 回答
533 浏览

ruby-on-rails - rails search with texticle:调用私有方法“scan”#

我有一个rails 应用程序,我想用tenderlove 的文本使其可搜索。在控制台中它工作正常,但在我的应用程序中我收到如下错误:

...

有人可以指出问题的根源吗?我被困住了...

谢谢!

瓦尔

PS 关于第 12 行的奇怪之处在于,它不应该被使用,因为我在参数中进行了搜索....当我禁用它时,错误指的是第 14 行

0 投票
1 回答
461 浏览

c# - Publicize.exe 退出并出现错误“值不能为空。参数名称:interfaceType

我正在尝试使用 Visual Studio 2010 制作私有访问器类。

这是 Publicize.exe 的返回:

我在我的项目中使用 internals 和 InternalVisibleTo。也许这就是问题的原因?

0 投票
8 回答
86243 浏览

c++ - 私有方法的单元测试

我正在编写一些单元测试。特别是我想测试一些私有方法。

到目前为止,我已经想出了使用。

但我对此并不满意,因为从单元测试的角度来看,它会破坏所有封装。

您使用什么方法对私有方法进行单元测试。

0 投票
1 回答
2171 浏览

python - 如何从 Python shell 调用内部函数?

我有一些代码(我不能轻易修改),格式如下:

我想bar()直接从 Python shell 调用 。我不介意使用co_globals, 或其他内部位。我觉得这可能是不可能的;是吗?

0 投票
5 回答
15958 浏览

c - 将结构划分为私有和公共部分?

在 C++ 和 Java 中,数据结构可以有private,publicprotected区域。我想将这个概念移植到我正在编写的 C 语言程序中。

是否有任何用于在 C 中实现私有或受保护的函数指针和数据字段的习语struct我知道 Cstruct是公共的,我正在寻找一个习惯用法来帮助隐藏一些实现细节并强制用户使用公共接口。

注意:商店已经选择了语言,所以我被困在 C 中实现面向对象的概念。

谢谢。

0 投票
2 回答
259 浏览

c# - 使用线程、事件和私有方法测试类

普遍共识

我已经阅读了大量关于测试复杂类和私有方法的主题。

普遍的共识似乎是:

  • “如果你需要测试私有方法,那么你的课程设计得很糟糕”
  • “如果您的课程很复杂,那么您需要将其分开”

所以,我需要你的帮助。

问题类

所以我有一个相对简单的类,它的长期工作是:

  • 轮询数据源
  • 做一些非常简单的数据映射
  • 将该数据发送到其他地方

另外:

  • 它需要能够通过在出现某些错误时重试各种任务来具有相当的容错性。

测试问题

该类的重点是抽象很多容错和线程......基本上是通过使用一个简单的 Timer 类和一些内部列表来跟踪错误等。

由于 Timer,某些方法在不同的线程上被异步调用......另外一些方法依赖于全局私有字段。

我应该如何测试这个类......特别是因为这么多方法是私有的?

欢呼伙计们