动态类型语言和静态类型语言

来源:互联网 发布:linux ping不通百度 编辑:程序博客网 时间:2024/05/16 11:56

       今天在学习Java的反射机制的时候,遇到了些不懂的词汇:动态类型语言静态类型语言。于是,上网搜索这两词汇表示什么意思……


       动态类型语言和静态类型语言到底是什么呢?他们的定义是这样的:


动态类型语言:类型的检查是在运行时做的。比如以下代码是不是合法要到运行时才判断(注意是运行时的类型判断)

return a+b;

add(a, b);

……

在用动态类型语言编程时,变量都不需要指定类型,直到运行时才会判断变量的类型。


静态类型语言:类型判断是在运行前(编译阶段)做的。每一个变量都要指定特定的类型,比如:

int a = 1, b = 3;

int c = a + b;


所以像Python、Ruby等语言属于动态类型语言,而Java、C、C++、C#等语言属于静态类型语言。

0 0