`

自省与反射

 
阅读更多

自省就是内省: 自己明白自己是什么,能做什么 , 一个类具有什么功能由自己决定,而不由外部决定

是反射的具体实现, 在python中 反射被说为是自省(introspection)

 

简单说:反射主外 内省主内

 

反射(reflection)

可以在运行时获得对象的类型信息。比如对于一个JAVA对象,它的类型信息包括

1,这个对象的所属的类(class)

2,这个类 的 构造器(constructor)

2,这个类 中 声明的方法(method)

3,这个类中 声明的属性(field)

4,这个类 中 声明的注解(annotation)

5,这个类 的 父类(superclass)

6,这个类 实现的 接口(interface)

自省( introspection

检查某些事物以确定它是什么、它知道什么以及它能做什么

分享到:
评论

相关推荐

    Python自省及反射原理实例详解

    Python中的自省与反射  由于Python是一门强类型的动态解释型语言,故我们在某些时候并不会知道(特别是与别人对接开发工作的时候)对象中具有的属性与方法。  这个时候我们并不能直接通过 ....Python中关于反射与自

    Python自省(反射)指南1

    本文第3节中介绍了inspect模块。如果模块没有文档,这个值是None。*__name__: 始终是定义时的模块名;即使你使用import .. as 为它取

    Python中的自省(反射)详解

    主要介绍了Python中的自省(反射)详解,本文讲解了通过访问对象的属性、访问对象的元数据、确定对象的类型等内容,需要的朋友可以参考下

    Java自省类教程

    reflection 是一系列的API,它用于表示或者处理当前JVM中的类,接口和对象。

    Python面向对象之反射/自省机制实例分析

    本文实例讲述了Python面向对象之反射/自省机制。分享给大家供大家参考,具体如下: 反射:程序可以访问,检测和修改它本身状态或行为的一种能力(自省) 下面就介绍四种实现自省的函数,适用于类和对象 1. 判断...

    cppexpose:用于类型自省,反射和脚本编写接口的C ++库

    cppexpose是跨平台的C ++ 11库,提供用于自省类型,属性和类的工具。 cppexpose允许C ++程序将其接口公开给运行时,从而可以为接口创建自动GUI表示,或将其公开给脚本环境。 该实现基于标准的C ++模板,并且不使用...

    PHP反射机制原理与用法详解

    面向对象编程中对象被赋予了自省的能力,而这个自省的过程就是反射。 反射,直观理解就是根据到达地找到出发地和来源。比如,一个光秃秃的对象,我们可以仅仅通过这个对象就能知道它所属的类、拥有哪些方法。 反射是...

    浅谈Python反射 & 单例模式

     – 反射主要是指程序可以访问、检测和修改它本身状态或行为的一种能力(自省)  面向对象中的反射  – 通过字符串的形式来操作(获取、检查、增加、删除)对象中的成员  – python中的一切事物都是对象(都可以...

    小结Python的反射机制

    反射的定义:检测和修改它本身状态或行为的一种能力(自省)。 而通过反射,Python可以通过字符串的映射或修改程序运行的状态和方法。 反射的四个方法。hasattr,getattr,setattr,delattr hasattr:判断一个方法...

    sarras:通过Java应用程序的静态和动态分析为Graal基板VM反射配置文件生成器

    解析给定jar中所有类的字节码,自省反射调用(通过反射访问类/方法/字段等),并将其配置添加到生成的反射配置文件中。 动态剖析 作为Java代理附加到常规Java应用程序(不是来自本机映像),并拦截反射调用(还包括...

    minimalcode-reflect:JavaBean 的简约反射和内省功能

    最小代码反射 JavaBean属性的低级反射和自省功能。 它支持字节码生成、注释和类型。

    人生元编程——MacTalk

    具备元编程的语言就具备更强大的操控自己的能力,可以自省,可以反射,可以动态改变和控制自己;具备人生元编程能力的人,同样有自省能力,随时检查和控制自身的情绪和行为,思考自己的想法,改变大脑的动机。 举个...

    ssh常用工具jar包详解(很详细,有源码实例)

    提供对Java 反射和自省API的包装, 主要提供了对于 JavaBean进行各种操作。commons-digester.jar: 它能方便地将XML文档所定义的元素转化为JAVA对象,其实它的用法有点象栈(当然内在的原理就是那个古老的东西,只是...

    框架中常用的jar包作用

    提供对Java 反射和自省API的包装. aspectjweaver.jar 用于在Spring 2.0中集成AspectJ AspectJ LTW织入器 ognl.jar OGNL是Object-Graph Navigation Language的缩写,它是一种功能强大的表达式语言(Expression ...

    go-and-reflect:通过结构字段标签和自定义封送处理了解更多有关Go反射的信息

    反复思考(关于数据结构和生命) 了解有关Go反射的更多信息。去反思概念在应用程序运行时进行反思/自省涉及三个概念: Reflection.Type ...........提供有关数据结构名称(用户,地址等),其字段名称(名称,年龄)...

    学习Java开源框架前你应该了解的

     一是Java的反射机制和自省机制。大部分框架都用到这两种机制,因为它们都要实现通过配置文件自动完成类的识别和加载,所以必须要使用反射和自省。尤其是自省机制,对于大家了解JSP中的一些知识也是很有帮助的。...

    PHPeas-开源

    PHPeas是PHP 5对象模型的组件体系结构,以及一组相关的帮助程序库,以帮助简化和增强现有PHP对象自省和反射API。

Global site tag (gtag.js) - Google Analytics