9

我找到了一个关于 java 上下文中什么是包的正确答案:术语“包”是什么意思?

我做了一个谷歌搜索,发现 Symfony 提供了很多不同的“包”接口,比如这个:

http://api.symfony.com/2.3/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.html

在 symfony 中,术语 bag 是否意味着解释为相同的方式?此外,这与“容器”或“集合”有何不同。

4

2 回答 2

11

一个(对象的名称是ParameterBag)包含变量或参数。

一个集合array包含一个元素列表(将其视为具有许多有用方法来操作值的面向对象版本)。该对象来自Doctrine 框架。Symfony 也有一个 Collection 的概念,并在其文档中进行了解释。

Container包含所有类型的对象,它有自己的 ParameterBag 对象,其参数从parameters配置文件的键中的任何内容加载。

一个Request对象 ( $this->container->get('request')) 也有它自己的 ParameterBag

在代码方面,Container 的参数包和 Request 的参数包是不同的,可以有不同的方法,但它们的目标是相同的。

于 2013-11-06T02:03:08.377 回答
1

Abag是 的缩写ParameterBag。bag 是一种用于帮助存储数据的数据类型,类似于 java 中的集合。正如 Dagon 所指出的,一个包特别可以通过键/值访问值,但也有其他有用的操作。

包的公共操作是:clear, add, all, get, set, has, remove, resolve, resolveValue, resolveString, isResolved, escapeValue, 和unescapedValue.

如果您想详细了解包的操作,可以在这里进行:https ://github.com/symfony/symfony/blob/master/src/Symfony/Component/DependencyInjection/ParameterBag/ParameterBag.php

于 2015-12-16T19:11:23.157 回答