您现在的位置是:首页 > 文章详情

反射和动态语言

日期:2019-03-16点击:431

动态语言

动态编程语言是一类在运行时可以改变其结构的语言:例如新的函数、对象、甚至代码可以被引进,已有的函数可以被删除或是其他结构上的变化。

Java 引入反射后可以算「动态语言」

因为反射允许正在运行的 Java 程序观测,甚至是修改程序的动态行为。

反射的使用场景

大多数情况使用的还是反射的 introspection,即观测,比如

  • rpc 调用,根据协议 invoke 某个类的某个方法
  • 序列化和反序列化,如 fastjson
  • ORM
  • 用注解搞事情
  • ide 里的提示。如你继承了某个抽象类后,能检测到你有没有实现某个抽象方法

动态vs 静态类型语言

动态类型语言是在编译器没确定,运行时才确定变量类型的语言。当你给变量赋值的时候,该变量的类型才确定。

  • 动态类型的优点

    • 少些很多代码。比如定义很多功能相同的方法,只是入参类型不一样
  • 缺点

    • 运行时报错。使用 api 时
原文链接:https://yq.aliyun.com/articles/693999
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章