美文网首页PHP经验分享程序员
如何理解动态类型/静态类型语言?

如何理解动态类型/静态类型语言?

作者: 陈钢镚学财 | 来源:发表于2018-11-30 11:43 被阅读12次

    很多人会把静态类型同等为强类型,动态类型同等为弱类型。
    其实不是。
    它们可能在表现上有很多相似之处,但它们并不同等,因为他们在原理上不一样。

    区分

    强类型弱类型,关注的是是否允许隐式类型转换。
    静态类型和动态类型,关注的是检查数据类型的时机。
    所以,理论上,“强类型弱类型”与“静态类型动态类型”之间没有必然联系。

    具体区别

    静态类型是指在运行之前就检查数据类型的语言,比如java,它在被转换成中间码,也就是在编译的时候,就检查了数据类型。

    动态类型是指,在运行的时候(runtime)才检查数据类型,比如php、javascript。

    注意

    有人可能会问,php就是弱类型,也是动态类型,java是静态类型,也是强类型,那从结果上来看,弱类型就是等于动态类型啊。
    其实也不是,举个例子:python就是动态类型,它在但却是强类型语言。

    相关文章

      网友评论

        本文标题:如何理解动态类型/静态类型语言?

        本文链接:https://www.haomeiwen.com/subject/bkoccqtx.html