草庐IT

Getters-Setter

全部标签

java - 返回实例引用的 setter 。模式还是反模式?

我在考虑代码结构,在考虑setter。这些曾经是void方法,那么为什么不使用一些可能的返回值来启用一些新的代码结构呢?我的想法是将所有属性setter从void更改为实例引用,这样我们就可以按顺序执行setter或其他操作。这是一个例子:publicclassMyClass{privateintfoo;privateStringbar;publicMyClasssetFoo(intfoo){this.foo=foo;returnthis;}publicMyClasssetBar(Stringbar){this.bar=bar;returnthis;}}然后在代码的其他地方我们可以做:

java - Eclipse 为具有 'm' 后缀的域对象和类成员生成 getter/setter

我有一个关于在我的域对象中生成的getter和setter方法的小问题。我想为我的源代码使用一个通用的风格指南。该风格指南的一部分说我在每个类成员名称的开头都使用前缀“m”表示成员。classUser{StringmName;ListmAllCall;ListmAllGeo;不幸的是,我有几个具有更多成员变量的类。我遇到的问题是我是一个非常懒惰的开发人员,我在Eclipse中使用创建了getter和setter方法"Source"->"GenerateGettersandSetters".结果是publicStringgetmName(){returnmName;}publicvoid

java - getters和setters的junit测试方法

我的项目中有很多javabean。我需要为他们生成一个JUnit测试类。使用Eclipse3.2和junit4.4生成的测试方法如下所示:publicvoidtestGetName(){//fail("Notyetimplemented");}@TestpublicvoidtestSetName(){//fail("Notyetimplemented");}@TestpublicvoidtestGetEmployeeid(){//fail("Notyetimplemented");}@TestpublicvoidtestSetEmployeeid(){//fail("Notyetimp

java - Field 中原始 getter/setter 的目的是什么?

在Field中publicObjectget(Objectobj)方法的文档中类说Thevalueisautomaticallywrappedinanobjectifithasaprimitivetype.对于publicvoidset(Objectobj,Objectvalue)来说Iftheunderlyingfieldisofaprimitivetype,anunwrappingconversionisattemptedtoconvertthenewvaluetoavalueofaprimitivetype.所以我是对的,像getInt和setInt这样的特定原始getter和s

java - 修改Eclipse默认提供的getter和setter方法有哪些设置?

我正在使用EclipseKepler开发我的Java项目。我创建了一个vo并向vo添加了一些属性。要为这些属性生成getter和setter方法,我右键单击其中一个属性并转到“Source”,然后单击“GeneratesGettersandSetters”。它向我展示了属性的可用getter/setter方法。下面是屏幕截图正如您在上面的屏幕截图中看到的,Eclipse为属性sId提供了getter和setter方法publicStringgetsId(){returnsId;}publicvoidsetsId(StringsId){this.sId=sId;}get和set之后的第一

java - 如何模拟私有(private) setter/getter ?

这个问题在这里已经有了答案:Howmockprivatemethodthatmodifyprivatevariables?(3个答案)关闭7年前。我有一个要测试的类(class)。它看起来类似于:publicclassClassUnderTest{privateDependency1dep1;privateDependency1getDependency1(){if(dep1==null)dep1=newDependency1();returndep1;}publicvoidmethodUnderTest(){....dosomethinggetDependency1().Invoke

java - 在 Java 的 setter 中抛出 Exception 是一种好习惯吗?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion更具体地说,我想编写一个代码,在给定值为负数时抛出IllegalArgumentException。我应该在setter/constructor中包含这段代码,还是应该在调用适当的方法时检查值?(例如:start()、init()、print()或run()。随便吧。)我的代码(简化版):publicclassLLUAlgorithm{privateinttemperature;publi

java - 使用 Date 或 List 在简单的 getter 和 setter 方法中解决 Sonar 问题

我编写这个getter/setter以从Eclipse源菜单中列出:publicDategetDate(){returndate;}publicvoidsetDate(Datedate){this.date=date;}Sonar报告两个问题:Returnacopyof"date"&Storeacopyof"date"有解释"Mutablemembersshouldnotbestoredorreturneddirectly"和示例代码:publicString[]getStrings(){returnstrings.clone();}publicvoidsetStrings(Strin

java - 如何解决 Hibernate 异常 "IllegalArgumentException occurred while calling setter"的原因?

当我的程序尝试按名称从数据库中加载用户时,Hibernate抛出的偶尔异常IllegalArgumentExceptionoccurredwhilecallingsetter如何解决?我是否错误地将表User中的列USER_RV映射到类Integer而不是BigDecimal或其他一些整数类型?请注意,同一应用程序将其他表中的NUMBER列映射到Integer对象,但Hibernate在用行填充对象时不会抛出此异常来自那些表。另外请注意,该程序为仅用户缓存启用RMI缓存复制。此异常可能与缓存复制有关吗?是Ehcache还是Hibernate的bug?Causedby:org.sprin

java - 自 Java 8 以来是否有使用 getter 和 setter 的新论点?

正如标题所说,在任何编程语言中,关于getter和setter的讨论总是很多,Java也是如此。问题如下:自从Java8发布以来是否有任何新的争论?一个已经存在的争论的例子是getter和setter封装状态,或者它们可以在不改变API的情况下改变实现。 最佳答案 是的,有!由于引入了Java8方法引用,正如其名称所示,它们只能与方法一起使用。考虑以下代码:classPerson{privateStringfirstName;privateStringlastName;publicPerson(finalStringfirstNam