编程语言 / 静态动态 · 2023年 10月 21日 0

静态语言和动态语言

13 次浏览

静态动态语言和类型是极其容易被混淆的概念,实际上不同语言设计者和使用者对语言理解不同,”静态”和”动态”的概念有很大差异。如下将按照维基百科作为标准。

静态动态概念

  • 动态语言是指一类在运行时可以改变其结构的语言:例如新的函数、对象、甚至代码可以被引进,已有的函数可以被删除或是其他结构上的变化。静态语言,即不支持动态语言功能的语言。PHP、Python、Ruby、Shell等都是动态语言,C、C++、Java等是静态语言。

类型概念

  • 如果一个编程语言的类型检查,可在不测试运行时期表达式的等价性的情况下进行,该语言即为静态类型的。
  • 如果一个编程语言支持运行时期(动态)调度已标记的资料,该语言即为动态类型的。

强类型和弱类型

  • 强类型的基本定义即为,禁止错误类型的参数继续运算。Python是强类型语言。
  • 弱类型意指一个语言可以隐式的转换类型(或直接转型), 例如VBScript、Shell.