首先强弱是相对的。
强类型:
每个变量和对象都必须声明类型,在编译时确定好类型了,执行时不能更改。偏向于不容忍隐式类型转换。譬如说haskell的int就不能变成double。
弱类型:
编译时不确定类型,执行时根据语义确定是哪种类型。通俗地说,弱类型偏向于容忍隐式转换,把不同类型的变量放在一起运算。
静态类型:
编译的时候就知道每一个变量的类型,因为类型错误而不能做的事情是语法错误。
动态类型:
编译的时候不知道每一个变量的类型,因为类型错误而不能做的事情是运行时错误。譬如说你不能对一个数字a写a[10]当数组用。
各种语言强弱和静动态关系:
————————————————
版权声明:本文为优快云博主「ywltoread」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/ywl570717586/article/details/87358649