语言的强弱类型和动态静态类型




强类型和弱类型语言:
强类型指的是程序中表达的任何对象所从属的类型都必须能在[编译时刻]确定。
常见的强类型语言有C++、Java和Python等。

弱类型语言也称为弱类型定义语言。与强类型定义相反。
像vb,js,php等就属于弱类型语言。


强类型的优势:
强类型是针对类型检查的严格程度而言的,它指任何变量在使用的时候必须要指定这个变量的类型,
而且在程序的运行过程中这个变量只能存储这个类型的数据。
因此,对于强类型语言,一个变量不经过强制转换,它永远是这个数据类型,不允许隐式的类型转换。

(1)强类型是自定义类所具有的优势,它使得对象处理的数据更容易被理解。

(2)强类型语言在大规模信息系统开发中具有巨大优势。
特别是当设计者定义了由自定义类所组成的数据访问层,并把设计向组织内的其他程序员发布的时候。
它可以通过[类型检查机制]在编译过程中发现许多容易被人忽视的错误,
从而[保证软件的质量],使得大规模的软件集成为可能。

弱类型的劣势:
极易出错

动态类型语言和静态类型语言:
所谓的动态类型语言,意思就是类型的检查是在[运行时]做的,js、Ruby、Python等也都属于动态语言。
所谓的静态类型语言,意思是类型判断是在[运行前]判断(如编译阶段),比如C#、java就是静态类型语言


是不是动态类型语言与这门语言是不是类型安全的完全不相干的,不要将它们联系在一起!



python是强类型的动态语言、解释性语言。
Javascrpt是弱类型的动态语言、解释性语言。
posted @ 2017-05-24 20:05  Adamanter  阅读(557)  评论(0编辑  收藏  举报