Re: [问题] 请问关于强型态的定义的问题

楼主: littleshan (我要加入剑道社!)   2017-01-20 16:06:36
不是很确定你看的是哪一本书
不过在 Programming language 的定义上是这样:
型别检查 (type checking):
检查变量的型别,避免对变量做出不符合其型别的操作 (ex 使用不合法的运算或取用不存在的物件成员)
强型别 (strong type-checking):
compiler / interpreter 永远会进行型别检查,目前大部分主流程式语言都属于强型别,包括 Java、C#、Python、JavaScript
弱型别 (weak type-checking):
compiler / interpreter 允许在某些情况下略过型别检查,可能会造成未定义行为 (undefined behavior),如 assembly、C/C++
静态型别 (static type-checking):
在 compile-time 进行型别检查,如 Java、C#
动态型别 (dynamic type-checking):
在 runtime 进行型别检查,如 Python、JavaScript
许多静态型别语言仍然会保留部分动态型别的特性,比如说 RTTI 或是 reflection 都算是动态型别检查的应用。

Links booklink

Contact Us: admin [ a t ] ucptt.com