静态类型与动态类型
编程语言常被分为:静态类型(Statically Typed)语言和动态类型(Dynamiclly Typed)语言。
以下引用自知乎用户 vczh 的回答:
静态类型:编译的时候就知道每一个变量的类型,因为类型错误而不能做的事情是语法错误。
动态类型:编译的时候不知道每一个变量的类型,因为类型错误而不能做的事情是运行时错误。譬如说你不能对一个数字a写a[10]当数组用。
NOTE: 强、弱类型并不是指在定义变量时要加上类型名,这种行为应该称为 显式、隐式 类型。