问题标签 [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.
php - getter 和 setter 的代码布局
我正在编写一个有很多 getter 和 setter 的类,并且想知道人们对以下内容的看法:
正常的方法是编写如下代码:
您对以下操作有何看法:
我以原始方式做这件事没有问题,因为它应该这样做。它似乎在我的 classon 函数中占据了很多空间,这些空间在它们的作用中非常明显。
提前致谢。
c# - 您多久看到一次滥用 C# 速记 getter/setter 的情况?
在 C# 中,您可以以比其他语言更简单的方式创建 getter/setter:
这将创建一个您无法直接寻址的内部私有变量,并使用外部属性“FooBar”直接访问它。
我的问题是 - 你多久看到一次这种滥用?似乎它很有可能经常违反封装最佳实践。不要误会我的意思,我会酌情使用它,并将它的部分变体用于只读只写类型的属性,但是您代码库中其他作者对它的不愉快经历是什么?
澄清:滥用的预期定义确实是在私有变量合适时创建这样的属性。
javascript - IE 中的 Javascript 获取器/设置器?
无论出于何种原因,自定义对象的Javascript getter/setter似乎适用于除 IE 之外的任何浏览器。
IE 是否有任何其他非标准机制?(与许多其他功能一样)
如果没有,是否有任何解决方法可以实现相同的功能?
c# - C#如何为集合创建公共getter和setter以及私有方法?
我想要一个具有(例如)SortedList 集合“SrtdLst”属性的类“A”,并且在这个类“A”中允许添加或减去“SrtdLst”项。但在“A”类的实例中,只允许获取或设置项目的内容,不能添加新项目或减去现有项目。在代码中:
更新:我想创建一个像 System.Data.SqlClient.SqlCommand 这样的类。对于存储过程,您可以使用填充“参数”集合的成员“DeriveParameters”,因此只能修改每个项目的值。
如何才能做到这一点?
c# - MVVM:VM 对象应该直接暴露 M 对象,还是仅通过委托给 M 的 getter 的 getter?
最好的解释方法是举例:
这是模型
这是视图模型
我的问题是:
vm应该将人暴露给数据模板还是用他自己的属性封装模型属性?
java - Java 接口使用指南——接口中的 getter 和 setter 是否不好?
人们认为在界面中使用的最佳指南是什么?什么应该和不应该进入界面?
我听人说过,作为一般规则,接口只能定义行为而不是状态。这是否意味着接口不应该包含 getter 和 setter?
我的观点:对于 setter 来说可能不是这样,但有时我认为 getter 可以有效地放置在接口中。这仅仅是为了强制实现类来实现这些 getter,从而表明客户端能够调用这些 getter 来检查某些东西。
java - Java Getters:总是执行特定的方法
有没有办法定义一个方法,每次我调用 get 时都会调用它?
我有一个对象联系人,不想设置 updateLastUsed(); 为我的会员提供大约 30 个吸气剂。
c# - TDD、DDD 和封装
在遵循我工作场所的“架构师”传下来的不良做法并认为必须有更好的方法之后,我最近一直在阅读有关 TDD 和 DDD 的内容,我认为这些原则和做法将是一个非常适合我们编写的软件的复杂性。
但是,我见过的许多 TDD 示例调用域对象上的方法,然后测试对象的属性以确保行为正确执行。
另一方面,业内几位受人尊敬的人(Greg Young 在他关于 CQRS 的演讲中最引人注目)主张通过删除所有“getter”来完全封装每个域对象。
因此,我的问题是:如果禁止检索其状态,如何测试域对象的功能?
我相信我缺少一些基本的东西,所以请随时称我为白痴并启发我 - 任何指导将不胜感激。
actionscript-3 - Actionscript 3.0 Setter - Getter
我想将主类中的构造函数的值传递给另一个类。
主类:
另一类:
它返回1061: Call to a possibly undefined method locationX through a reference with static type Class.
我究竟做错了什么?
php - 如何在我的类中使用 PHP 的 __get() 和 __set() 来定义字段?
我已经很好地阅读了有关重载的 PHP 规范,并且大多数示例似乎旨在简单地允许定义自定义字段(类似于 stdClass)。
但是我的类中定义的私有字段呢?应该如何检索/分配这些?我可以对可能的值进行切换并对某些值采取行动:
这是最好的方法,还是有另一种普遍接受的最佳做法?(我不知道是否可以在类中循环类变量,但无论如何这在大多数情况下都不合适,因为您不想返回所有内容。)