草庐IT

Getters-Setter

全部标签

objective-c - 如何在保留合成代码的同时向合成的 getter/setter 添加一些代码

例如,我需要在每次调用合成的getter或setter时执行NSLog(@"Executed.")。我看到了2种方法:找到一些可能像合成片段一样工作的片段。Thisthread可能会有所帮助。使用KVO:添加一些将完成工作的观察者。对我来说,所有这些看起来都不令人满意。所以,主题。UPDAE:感谢您的回答,但直接覆盖不是解决方案:我们松开合成代码。如果我们从某个地方(甚至是苹果工程师给我们代码的苹果论坛)“复制粘贴”“正确的”合成代码,我们应该检查它在下一个编译器版本后没有改变。 最佳答案 您可以使用自定义的getter和sette

ios - Swift 2,带有 Objective-C 选择器 'setOn' 的方法 'setOn:' 与具有相同 Objective-C 选择器的 'on' 的 setter 冲突

Swift2,我有一个继承自objc的UIView的类,它有“on”变量,以及相关的方法“setOn:animated”和“setOn:”,如下所示:publicclassAView:UIView{varon:Bool=falsepublicfuncsetOn(on:Bool,animated:Bool){self.on=on//dosomethingmoreaboutanimating}publicfuncsetOn(on:Bool){setOn(on,animated:false)}我收到一条错误消息:带有Objective-C选择器“setOn:”的方法“setOn”与具有相同O

ios - NSManagedObject setter 给我 [ MyObject setName :]: unrecognized selector sent to instance

我通过xcode编辑器菜单创建了一个NSManagedObject。我的对象只有一个属性“名称”。当我尝试设置属性时,我得到“[MyObjectsetName:]:unrecognizedselectorsenttoinstance”MyObject*thing=[MyObjectobjectFromJSONDictionary:obj];thing.name=obj;我已检查我的属性“名称”在CD中与在我的类(class)中相同。我的接口(interface)属性也是一样的。和我的动态属性是一样的。@property(nonatomic,retain)NSString*name;@d

ios - 使用 arc 和 dynamic 属性覆盖 setter

我需要在setter方法中做一些额外的事情。但是这样做时我得到了一个无限循环:我有一个核心数据对象@interfaceTransaction:NSManagedObject@property(nonatomic,retain)NSDate*date;@end@implementationTransaction@dynamicdate;-(void)setDate:(NSDate*)date{self.date=date;//additionalstuffomitted}所以,在这种情况下,我得到了一个无限循环。好的,所以我在网上搜索并按以下方式修改了我的代码,对于每个版本我都会遇到编译

phpstorm 生成带有类型提示的 setter

在phpstorm中,您可以通过alt+insert>setters>选择变量来为类成员生成setter方法。但是,即使phpstorm知道变量的类型/类,它也不会在参数列表中插入类型提示。如何让phpstorm生成带有类型提示的setter,但仅针对可提示类型?示例类classCodeGenerationTest{/*@var\DateTimeInterface*/private$date;/*@varint*/private$num;}所需的生成器应该是:/***@paramDateTimeInterface$date*/publicfunctionsetDate(DateTime

php - 这是在 PHP 类中处理 getter/setter 的合理方法吗?

我将尝试使用此问题的格式进行一些尝试,并且我非常愿意接受有关更好的处理方法的建议。我不想只是在问题中转储一堆代码,所以我已经在refactormycode上发布了该类的代码。baseclassforeasyclasspropertyhandling我的想法是人们可以在此处发布代码片段或在refactormycode上进行更改并将链接发布回他们的重构。我会根据此投票并接受答案(假设有一个明确的“赢家”)。无论如何,关于类(class)本身:我看到很多关于getter/setter类方法的争论,是直接访问简单的属性变量更好,还是每个类都应该定义明确的get/set方法,等等等等。我喜欢拥有

php - 如何在 NetBeans 中生成 PHP getter 和 setter?

我在NetBeans8中看到了从类属性自动创建getter和setter的重构功能。它适用于Java代码,但似乎不适用于PHP代码。是否可以启用此功能或获得一些扩展,这样做是什么? 最佳答案 Justrightclickinsidetheclassbody,notovertheclassvariablesandchooseinsertcodeoptionasshowninthirdimage.link:http://w.planetnetbeans.org/topic28565.html

Android Room 库错误 : Cannot find setter for field. (Kotlin)

我正在使用房间图书馆,我有下面提到的实体:@Parcelize@Entity(tableName="tb_option")dataclassOptionsTable(varquestion_id:Int?=null,varoption_id:Int?=null,varoption:String?=null,varis_selected:Int?=null,@PrimaryKey(autoGenerate=true)varsr_no:Int=0):Parcelable如您所见,我将所有字段声明为var但它仍然显示错误:error:Cannotfindsetterforfield.e:e:

java - java中getter setter的空指针异常

我有一个名为SharedData.java的gettersetter类。当我要在我的代码中暗示它时,我得到了空指针异常。这是SharedData类:publicclassSharedData{privatestaticSharedDatainstance=null;publicSharedData(){//randomizeServers();}//datatobesharedprivatedoublesrc_latitude=-1;privatedoublesrc_longitude=-1;privatedoubleend_latitude=-1;privatedoubleend_l

android - Field 的模糊 setter/getter ...房间持久性库

我有以下实体publicclassUser{@PrimaryKeyprivatefinallongid;privateString_id;privateStringuserName;privateStringemail;}但是,当我尝试使用房间持久性库在android中为此实体创建表时,出现以下错误。Error:(18,20)error:Field(element=_id,name=_id,type=java.lang.String,affinity=TEXT,columnName=_id,parent=null,indexed=错误的)。以下所有匹配项:getId、get_id。你可