强类型 弱类型 静态类型 动态类型语言
动态语言和静态语言
1、动态类型语言:(比如js等
在执行期间检查数据的类型的语言。
用这类语言编程,不会给变量指定类型,而是在附值时得到数据类型。
2、静态类型语言:(比如C++、java等)
静态类型语言是在执行前编译时检查类型。在写代码时。没声明一个变量必须指定类型。
强类型定义语言和弱类型定义语言
1、强类型定义语言:
强制数据类型定义的语言。
就是说,一旦一个变量被指定了某个数据类型,假设不经过强制转换。那么它就永远是这个数据类型了。举个样例:假设你定义了一个整型变量a,那么程序根本不可能将a当作字符串类型处理。
强类型定义语言是类型安全的语言,如Java。
2、弱类型定义语言:
数据类型能够被忽略的语言。它与强类型定义语言相反, 一个变量能够赋不同数据类型的值。如JS
一些例子
无类型: 汇编
弱类型、静态类型 : C/C++
弱类型、动态类型检查: Perl/PHP
强类型、静态类型检查 :Java/C#
强类型、动态类型检查 :Python, Scheme
静态显式类型 :Java/C
静态隐式类型 :Ocaml, Haskell