您使用什么约定来评论getter和setter?这是我很长一段时间以来一直想知道的事情,例如:/***(1a)whatdoyouputhere?*@paramsalary(1b)whatdoyouputhere?*/publicvoidsetSalary(floatsalary);/**(2a)whatdoyouputhere?*@return(2b)*/publicfloatgetSalary();我总是发现我在为1a/b和2a/b写几乎完全相同的东西,比如1a)设置员工的薪水,1b)员工的薪水。这似乎是多余的。现在我可以看到对于更复杂的内容,您可能会在(a)部分中写更多内容,以提供
我需要获取具有特定注释的字段的值,因此通过反射我能够获取此字段对象。问题是这个字段总是私有(private)的,尽管我事先知道它总是有一个getter方法。我知道我可以使用setAccesible(true)并获取它的值(当没有PermissionManager时),尽管我更喜欢调用它的getter方法。我知道我可以通过查找“get+fieldName”来查找方法(尽管我知道例如boolean字段有时被命名为“is+fieldName”)。我想知道是否有更好的方法来调用这个getter(许多框架使用getter/setter来访问属性,所以也许他们以另一种方式来做)。谢谢
我用C#编程已经有一段时间了,现在我想复习一下我的C++技能。上课:classFoo{conststd::string&name_;...};最好的方法是什么(我只想允许读取name_字段):使用getter方法:inlineconststd::string&name()const{returnname_;}公开该字段,因为它是一个常量谢谢。 最佳答案 对于长期存在的类来说,使用getter方法是更好的设计选择,因为它允许您在将来用更复杂的方法替换getter方法。尽管对于const值似乎不太可能需要此操作,但成本低且可能带来的好处
我目前正在使用Qt和C++。我有具有私有(private)数据成员和公共(public)成员函数的类。我为类中可用的数据成员提供了公共(public)getter和setter。现在我的问题是,如果我们的类中有数据成员的getter和setter,那么将这些数据成员设为私有(private)有什么意义?我同意在Base类中使用私有(private)数据成员听起来合乎逻辑.但除此之外,拥有私有(private)成员以及它们的getter和setter对我来说似乎不合逻辑。或者我们可以将所有变量都设为公开,这样就完全不需要getter和setter了吗?拥有这些是一个好习惯吗?我知道拥有私
关于C++中的访问器方法的几个问题已经在SO上提出,但没有一个能够满足我对这个问题的好奇心。我尽量避免使用访问器,因为像Stroustrup和其他著名的程序员一样,我认为一个包含许多访问器的类是糟糕的OO的标志。在C++中,在大多数情况下,我可以为类添加更多责任或使用friend关键字来避免它们。然而在某些情况下,您确实需要访问特定的类成员。有几种可能:1.完全不要使用访问器我们可以将各自的成员变量公开。这在Java中是不行的,但在C++社区中似乎没问题。但是,我有点担心应该返回对对象的显式拷贝或只读(const)引用,这是否被夸大了?2。使用Java风格的get/set方法我不确定它
我在调用本地例程时收到此警告。我的代码是这样的:-(void)nextLetter{//NSLog(@"%s",__FUNCTION__);currentLetter++;if(currentLetter>(letters.count-1)){currentLetter=0;}self.fetchLetter;}我在self.fetchLetter语句中收到警告。该例程如下所示:-(void)fetchLetter{//NSLog(@"%s",__FUNCTION__);NSString*wantedLetter=[[lettersobjectAtIndex:currentLetter
如何覆盖一个属性合成的getter? 最佳答案 只需手动实现方法即可,例如:-(BOOL)myBoolProperty{//dosomethingelse...returnmyBoolProperty;}然后编译器将不会生成getter方法。 关于iphone-如何覆盖@synthesizedgetter?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5047399/
我最近尝试编译一个较旧的Xcode项目(以前编译得很好),现在我看到了很多这种形式的错误:error:writableatomicproperty'someProperty'cannotpairasynthesizedsetter/getterwithauserdefinedsetter/getter导致这些错误的代码模式总是如下所示://Interface:@property(retain)NSObject*someProperty;//Implementation:@synthesizesomeProperty;//toprovidethegetter-(void)setSomeP
我这样做是这样的:defset_property(property,value):defget_property(property):或object.property=valuevalue=object.property我是Python的新手,所以我仍在探索语法,我希望得到一些关于这样做的建议。 最佳答案 试试这个:PythonProperty示例代码为:classC(object):def__init__(self):self._x=None@propertydefx(self):"""I'mthe'x'property."""p
这个问题在这里已经有了答案:What'sthepythonicwaytousegettersandsetters?(8个回答)关闭24天前。@property表示法与经典的getter+setter相比有什么优势?程序员应该在哪些特定情况/情况下选择使用其中一种?带属性:classMyClass(object):@propertydefmy_attr(self):returnself._my_attr@my_attr.setterdefmy_attr(self,value):self._my_attr=value没有属性:classMyClass(object):defget_my_a