自省就是内省,内省在反射包里,是利用反射实现的,内省可以算是对反射的扩充,二者不是一个概念。
内省主要说的,一个类该做哪些事情由这个类本身就决定了,而非外部调用者。
比如一个类只有get和set方法,那么明显这个类的主要任务就是封装数据,则把这个类传入对应内省构造器中,无须你在挨个set。
或者一个负责计算某些值,那你可以要求这个类所有计算方法必须以“compute”开头,则将这个类自动运行而无需关心该计算哪些。
====================================================
反射 与 自省 都是用来判断一个语言是否是动态语言 的标准
下面是 它们 的定义(计算机编程中)
反射(reflection) :
可以在运行时获得对象的类型信息。 比如对于一个JAVA对象,它的类型信息包括
1,这个对象的所属的类(class)
2,这个类 的 构造器(constructor)
2,这个类 中 声明的方法(method)
3,这个类 中 声明的属性(field)
4,这个类 中 声明的注解(annotation)
5,这个类 的 父类(superclass)
6,这个类 实现的 接口(interface)
自省( introspection ) :
默认构造(如通过默认的构造函数可以给一个po中的多个属性赋值)
检查某些事物以确定它是什么、它知道什么以及它能做什么。
对象 的 类型信息 就是描述 这个对象 是什么,知道什么,以及能做什么。
我感觉 反射 与 自省 其实是一回事, 只是在JAVA中把自省说成反射,在PYTHON中把反射说成自省。
不知道为什么一种事物会有两种说法。。。
分享到:
相关推荐
内省机制和反射机制是两种不同的机制,内省机制主要用于访问某个 Bean 的属性和事件,而反射机制则可以用于访问和操作任何对象的属性和方法。它们经常被结合使用,以便更好地实现实际应用中的需求。
pgi, ( 实验/无维护) gtk+/for自省绑定 PGI - 纯 python GObject内省绑定GObject自省绑定使用 ctypes 和 cffi ( 可选) 在纯 python 中编写。 API与 PyGObject 兼容。开发状态:警告:没有实现/支持许多内容。查看
Collective.ZodbBrowser是一个Web应用程序,用于浏览,检查和内省Zope的zodb对象。手表特征ZodbBrowser让您浏览整个ZODB内容树,对于每个对象,您都可以获得: * Its class and ancestors source code.* Its ...
内省的乐趣 能够对函数进行自省的节点模块,可以在数组中返回其参数名称。 安装 npm install --save introspect-fun 原料药 基本用途 var introspect = require ( 'introspect-fun' ) ; var noArgs = function ( ) ...
mdbus2 - 交互式 DBus 内省、交互和监控 概要 mdbus2 [ OPTIONS... ] [ servicename [ objectpath [ method [ params... ]]]] mdbus2 -si mdbus2 -sl 描述 mdbus2命令用于探索系统总线和会话总线上的mdbus2服务并...
使用简单的验证规则在GraphQL中禁用自省查询。 包含__schema或__type查询将无法通过此规则进行验证。 例如,以下查询将被拒绝: query { __schema { queryType { name } } } query { __type ( name : " ...
NSDictionary-内省 Objective-C 运行时属性自省 以 NSDictionary 的形式按需打印出类的属性和值。 有关更多信息,请阅读: : 安装 是推荐的安装NSDictionary-Introspect 。 只需Podfile添加到您的Podfile : 播客...
某些GraphQL API禁用了自省功能。 例如, ,则。 禁用内省后,Clairvoyance允许我们获取GraphQL API模式。 它以JSON格式生成模式,适用于其他工具,例如 , 或 。 安装 $ git clone ...
操作系统(OS)上基于虚拟机(VM)的自省比以前的基于主机的自省,具有更强的抵抗攻击能力,同时又难以检索OS的语义视图。 解决该限制的先前方法高度依赖于显式的来宾信息,而该... 评价结果证明了其实用性和有效性。
Ruby MRI 1.9.3 和 1.9.2 的一组补丁,增加了运行时内省、调用帧对象以及对调试器等其他运行时支持。 对于 MRI 1.9.2,C 扩展中有其他例程。 对于 MRI 1.9.3,一切都在打补丁的 Ruby 中。 不过,在这个存储库中...
骨干内省者骨干应用程序自省-生成应用程序组件的树状图(使用d3.js)要求骨干应用装有require.js的模块预习 还检查TodirMVC实现的示例目录安装在您的main.js中require ( ['backbone' ,'views/app' ,'routers/router'...
托管间谍ManagedSpy是用于运行时自省.NET Windows Forms程序的软件。平台支援同时支持32位和64位进程。 对于32位和64位支持,有两种不同的构建配置。 32位ManangedSpy仅可以检查32位进程,而64位ManagedSpy仅可以...
“自省的威力”指的是Python的内省能力,即程序可以检查自身的行为和结构。这包括检查对象的属性、方法,甚至在运行时动态修改类和对象。例如,使用`dir()`函数可以查看对象的所有属性和方法,`type()`可以检查对象...
用于构建,托管和部署可可视化LibP2P自省数据的小部件的工具包。 设置 要从本地开始,请首先克隆存储库,然后运行yarn install 。 然后可以部署UI并将其连接到数据源: 本地部署 运行npm run start:app来运行app包的...
Docker 内省 API 这是一个小型的 Python HTTP 服务器,它允许从容器内查询有关 Docker 容器的信息,而无需暴露整个 Docker API。 服务器只支持只读访问一种资源——容器信息。 目前没有对请求源的验证。用法安装...
dbinspector.java 是 JDBC 模式自省 API 的小型 OO 包装器。 Inspector inspector = new Inspector(conn); for (Table table: inspector.getTables()) { for (Column column: table.getColumns()) { System....
基于GObject自省的实验性绑定生成器。 例如,以下命令最终将能够构建Gtk绑定: $ go get github.com/dradtke/go-gi $ go-gi Gtk # assumes that $GOPATH/bin is in your $PATH $ go build gi/gtk
XSpyDer是python中的XSD自省。 它旨在为包含类型的XSD文档创建一个dom表示形式,并创建一个中间表示形式,该中间表示形式可以创建其他语言(例如PHP)以及python,C,java,英语和英语的类。
它可以使用任何可用的内省库,例如 Gtk+。 它本质上类似于或 。 请注意,该项目目前处于测试阶段,正在开发中。 任何愿意提供帮助的贡献者都将受到欢迎。 支持的 Node.js 版本: 12 、 14 、 15 、 16 (其他版本...
提供了下载,安装,配置和启动“ mitmproxy”的方法以及自省和验证网络捕获的方法。 提供了特殊工具,可以测试进行API调用的R包。 锡里面是什么 提供以下功能/方法: call_mitm :使用自定义参数生成mitmdump后台...