问题标签 [getter]

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 回答
390 浏览

php - getter 和 setter 的代码布局

我正在编写一个有很多 getter 和 setter 的类,并且想知道人们对以下内容的看法:

正常的方法是编写如下代码:

您对以下操作有何看法:

我以原始方式做这件事没有问题,因为它应该这样做。它似乎在我的 classon 函数中占据了很多空间,这些空间在它们的作用中非常明显。

提前致谢。

0 投票
4 回答
4072 浏览

c# - 您多久看到一次滥用 C# 速记 getter/setter 的情况?

在 C# 中,您可以以比其他语言更简单的方式创建 getter/setter:

这将创建一个您无法直接寻址的内部私有变量,并使用外部属性“FooBar”直接访问它。

我的问题是 - 你多久看到一次这种滥用?似乎它很有可能经常违反封装最佳实践。不要误会我的意思,我会酌情使用它,并将它的部分变体用于只读只写类型的属性,但是您代码库中其他作者对它的不愉快经历是什么?

澄清:滥用的预期定义确实是在私有变量合适时创建这样的属性。

0 投票
4 回答
11005 浏览

javascript - IE 中的 Javascript 获取器/设置器?

无论出于何种原因,自定义对象的Javascript getter/setter似乎适用于除 IE 之外的任何浏览器。

IE 是否有任何其他非标准机制?(与许多其他功能一样)

如果没有,是否有任何解决方法可以实现相同的功能?

0 投票
4 回答
7861 浏览

c# - C#如何为集合创建公共getter和setter以及私有方法?

我想要一个具有(例如)SortedList 集合“SrtdLst”属性的类“A”,并且在这个类“A”中允许添加或减去“SrtdLst”项。但在“A”类的实例中,只允许获取或设置项目的内容,不能添加新项目或减去现有项目。在代码中:

更新:我想创建一个像 System.Data.SqlClient.SqlCommand 这样的类。对于存储过程,您可以使用填充“参数”集合的成员“DeriveParameters”,因此只能修改每个项目的值。

如何才能做到这一点?

0 投票
4 回答
8875 浏览

c# - MVVM:VM 对象应该直接暴露 M 对象,还是仅通过委托给 M 的 getter 的 getter?

最好的解释方法是举例:

这是模型

这是视图模型

我的问题是:
vm应该将人暴露给数据模板还是用他自己的属性封装模型属性?

0 投票
11 回答
35829 浏览

java - Java 接口使用指南——接口中的 getter 和 setter 是否不好?

人们认为在界面中使用的最佳指南是什么?什么应该和不应该进入界面?

我听人说过,作为一般规则,接口只能定义行为而不是状态。这是否意味着接口不应该包含 getter 和 setter?

我的观点:对于 setter 来说可能不是这样,但有时我认为 getter 可以有效地放置在接口中。这仅仅是为了强制实现类来实现这些 getter,从而表明客户端能够调用这些 getter 来检查某些东西。

0 投票
10 回答
1196 浏览

java - Java Getters:总是执行特定的方法

有没有办法定义一个方法,每次我调用 get 时都会调用它?

我有一个对象联系人,不想设置 updateLastUsed(); 为我的会员提供大约 30 个吸气剂。

0 投票
8 回答
3034 浏览

c# - TDD、DDD 和封装

在遵循我工作场所的“架构师”传下来的不良做法并认为必须有更好的方法之后,我最近一直在阅读有关 TDD 和 DDD 的内容,我认为这些原则和做法将是一个非常适合我们编写的软件的复杂性。

但是,我见过的许多 TDD 示例调用域对象上的方法,然后测试对象的属性以确保行为正确执行。

另一方面,业内几位受人尊敬的人(Greg Young 在他关于 CQRS 的演讲中最引人注目)主张通过删除所有“getter”来完全封装每个域对象。

因此,我的问题是:如果禁止检索其状态,如何测试域对象的功能?

我相信我缺少一些基本的东西,所以请随时称我为白痴并启发我 - 任何指导将不胜感激。

0 投票
1 回答
1471 浏览

actionscript-3 - Actionscript 3.0 Setter - Getter

我想将主类中的构造函数的值传递给另一个类。

主类:

另一类:

它返回1061: Call to a possibly undefined method locationX through a reference with static type Class.

我究竟做错了什么?

0 投票
3 回答
8352 浏览

php - 如何在我的类中使用 PHP 的 __get() 和 __set() 来定义字段?

我已经很好地阅读了有关重载的 PHP 规范,并且大多数示例似乎旨在简单地允许定义自定义字段(类似于 stdClass)。

但是我的类中定义的私有字段呢?应该如何检索/分配这些?我可以对可能的值进行切换并对某些值采取行动:

这是最好的方法,还是有另一种普遍接受的最佳做法?(我不知道是否可以在类中循环类变量,但无论如何这在大多数情况下都不合适,因为您不想返回所有内容。)