这几天看公司一个中间件对异步的支持的新特性中,它使用注解处理器来自动生成异步接口。就看了下如何使用注解及编译期注解处理器,一下是些学习笔记吧! 此处说的Java注解及注解处理器,不是运行期注解及使用Class对象和反射来处理的处理器!而是编译期处理的源文件注解(RetentionPolicy.SOU ...
分类:
编程语言 时间:
2017-04-24 00:10:52
阅读次数:
172
反射 到底什么是反射(Reflection)呢? 反射有时候也被称为内省(Introspection),事实上,反射,就是一种内省的方式, Java不允许在运行时改变程序结构或类型变量的结构,但它允许在运行时去探知、加载、调用在编译期完全未知的class,可以在运行时加载该class,生成实例对象( ...
分类:
编程语言 时间:
2017-04-23 16:51:28
阅读次数:
154
编程语言可以分为三大类1.静态类型语言,比如:C/Java等,在静态语言类型中,类型的检查是在编译期(compile-time)确定的。2.动态语言类型,比如:PHP,python等各种脚本语言,这类语言中的类型是在运行时确定的。3.无类型语言,比如:汇编语言,汇编语言操作的是底层存储,他们..
分类:
Web程序 时间:
2017-04-17 14:56:25
阅读次数:
262
1. TMP是什么? 模板元编程(template metaprogramming TMP)是实现基于模板的C++程序的过程,它能够在编译期执行。你可以想一想:一个模板元程序是用C++实现的并且可以在C++编译器内部运行的一个程序,它的输出——从模板中实例化出来的C++源码片段——会像往常一样被编译 ...
分类:
编程语言 时间:
2017-04-15 13:29:11
阅读次数:
305
(一)DLR C#4的动态功能是Dynamic Language Runtime(动态语言运行时,DLR)的一部分。DLR是添加到CLR的一系列服务。 (二)dynamic类型 dynamic类型允许编写忽略编译期间的类型检查的代码。编译器假定,给dynamic类型的对象定义的任何操作都是有效的,在 ...
分类:
编程语言 时间:
2017-04-10 23:18:49
阅读次数:
281
编译期对源程序的语法和逻辑结构进行检查(只检查单个文件的语法)编译成功,每个.c文件生成一个同名.obj文件 链接期将所有有关联的.obj文件及C函数库组合生成.exe文件 运行期 ...
分类:
其他好文 时间:
2017-04-09 10:39:13
阅读次数:
108
以下内容来自维基百科,关于静态类型检查和动态类型检查的解释: 以下内容来自维基百科,关于静态类型检查和动态类型检查的解释: 静态类型检查:基于程序的源代码来验证类型安全的过程; 动态类型检查:在程序运行期间验证类型安全的过程; Java使用静态类型检查在编译期间分析程序,确保没有类型错误。基本的思想 ...
分类:
编程语言 时间:
2017-04-04 22:53:32
阅读次数:
179
恢复内容开始 起因是在刷题时偶遇的一道关于String 对象引用的问题 开始时,我以为只是简单的对象引用不同,但是,再粗略的画了一下堆栈的关系后,我发现我错了,这里的主要问题还是String函数在编译期对内存的分配管理。 这段代码,在编译期会常量重叠,javac会帮助我把值算出来,然后赋值给s3,所 ...
分类:
其他好文 时间:
2017-04-02 16:21:55
阅读次数:
163
TOAST主要用于存储一个大字段的值。要理解TOAST,需先理解页(BLOCK)的概念。在PG中,页是数据在文件存储中的基本单位,其大小是固定的且只能在编译期指定,之后无法修改,默认的大小为8KB。同时,PG不允许一行数据跨页存储,那么对于超长的行数据,PG就会启动TOAST,具体就是采用压缩和切片... ...
分类:
数据库 时间:
2017-03-31 10:12:27
阅读次数:
245
1. 显示接口和运行时多态 面向对象编程的世界围绕着显式接口和运行时多态。举个例子,考虑下面的类(无意义的类), 考虑下面的函数(同样没有意义), 对于doProcessing中的w,我们可以这样说: 因为w被声明为Widget类型,w必须支持Widget接口。我们可以在源码中搜寻这个接口(例如,在 ...
分类:
编程语言 时间:
2017-03-31 00:52:14
阅读次数:
172