美文网首页iOS开发
OC 类的私有属性

OC 类的私有属性

作者: chenhh6701 | 来源:发表于2017-03-17 10:18 被阅读126次

oc中函数没有private属性,这和动态有关
可以用performSelector 调用私有函数。
同时子类也可以通过[sub_object performSelector:@selector(super_privateMethod)]调用父类的私有方法,这刚好符合oc的动态函数的思想。
同时oc的"."语法是通过setter和getter函数间接实现的,所以有相应方法的私有属性也可以通过performSelector获取。

例子:
@importation SubObject{
NSString* string;
}

像上面的 string属性没有setter和getter方法,所以无法通过performSelector获取,除非类中实现了-(void) string; 对应的方法
string 只是一个实例变量并非属性。可用_>访问

遗留问题:

私有方法是否可以通过runtime机制更改实现?

相关文章

  • OC 类的私有属性

    oc中函数没有private属性,这和动态有关可以用performSelector 调用私有函数。同时子类也可以通...

  • Category 增加weak属性

    背景 因为 OC 中 无法直接为类新增属性(继承、私有 extension 除外),那么通过 category 结...

  • [iOS][OC] 更安全的 association weak

    背景 因为 OC 中 无法直接为类新增属性(继承、私有 extension 除外),那么通过 category 结...

  • Java(2):修饰词(publice、protected、pr

    前言 修饰词的作用主要是限制属性、方法、类的访问范围.在OC中我们创建一个类,这个类的属性和方法是不是私有属性,我...

  • 访问并修改一个类的私有属性

    在OC中的类会有某些私有属性,这些属性通常写在.m文件中或在.h文件中用@private关键字进行修饰。某些...

  • 20180214私有化

    setNum 更改类的私有属性getNum 获取类的私有属性 基类中设置的私有属性,无法被继承其的子类继承过去,只...

  • 类的私有属性和私有方法

    当定义私有属性后,python将私有属性改了名字为 _类名+私有属性名

  • 2018-12-06

    类的属性-总结 类属性,也是公有属性 类的私有属性 对象的公有属性 对象的私有属性 内置属性 函数的局部变量 全局...

  • 1.1 OC中的私有方法

    本小节知识点: 【掌握】OC中的私有变量 【掌握】OC中的私有方法 1.OC中的私有变量 在类的实现即.m文件中也...

  • 公有、私有、静态属性和方法的区别2018-07-10

    //私有方法:私有方法本身是可以访问类内部的所有属性(即私有属性和公有属性),但是私有方法是不可以在类的外部被调用...

网友评论

    本文标题:OC 类的私有属性

    本文链接:https://www.haomeiwen.com/subject/fgtenttx.html