黑马程序员技术交流社区

标题: . 什么是内省 [打印本页]

作者: 一步步往上爬    时间: 2016-1-21 19:12
标题: . 什么是内省
. 什么是内省
      
    内省,通常是和反射一起说的
    简单来说就是一种特殊的机制,它是指面向对象语言的一种在运行期间查询对象信息的能力,比如如果该语具有运行期间检查对象型别的能力,那么我们称它是型别内省(type intropection)
    内省在不同语言中的体现,是不一样的
      
    例如在java中:
     就是简单的指代,用反射的方式调取bean类中的get和set方法
    在OC中:
     例如协议的检测,类类型的检测,类继承类类型的检测
      
    通常它们的检测都是通过反射来获取到具体类的
   
    简单理解吧,内省就是系统自己运行时,用来获取一些对象上的信息的
    比如对象的类型,是否包含某中协议,对象中包含的属性信息 等等
    它的作用就是为了避免错误的进行属性,对象的调用,避免错误的进行消息派发




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2