动态语言、动态类型语言、静态类型语言、强类型语言、弱类型语言介绍

 更新时间:2015年04月09日 11:45:10   投稿:junjie  
这篇文章主要介绍了动态语言、动态类型语言、静态类型语言、强类型语言、弱类型语言介绍,需要的朋友可以参考下

关于如题这几个概念,大部分人应该比较熟悉,但是我昏了好久,所以写下来加深印象。

1. 动态语言

又叫动态编程语言,是指程序在运行时可以改变其结构:新的函数可以被引进,已有的函数可以被删除等在结构上的变化。比如众所周知的ECMAScript(JavaScript)便是一个动态语言。除此之外如Ruby、Python等也都属于动态语言,而C、C++等语言则不属于动态语言。

而其实我们平时说的“动态语言”应该指的是“动态类型语言”。至少我之前一直是这么认为的。

2. 动态类型语言

在运行时,确定类型的语言。
即编译时与类型无关。一般在变量使用之前不需要声明变量类型,而变量的类型通常是由被赋的值的类型决定。 如php、Python和Ruby。

3. 静态烈性语言

与动态类型语言正好相反,在编译时,便需要确定类型的语言。即写程序时需要明确声明变量类型。如C/C++、Java、C#等。

对于动态语言与静态语言的区分,套用一句流行的话就是:Static typing when possible, dynamic typing when needed。

4. 强类型语言

强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。
强类型定义语言是类型安全的语言。

5. 弱类型定义语言

数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。
强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避免许多错误。
另外,由上边看出“这门语言是不是动态类型语言”与“这门语言是否类型安全”之间是完全没有联系的!

相关文章

  • Python实现用户登录并且输入错误三次后锁定该用户

    Python实现用户登录并且输入错误三次后锁定该用户

    这篇文章主要介绍了Python实现用户登录并且输入错误三次后锁定该用户,文中通过c#代码给大家补充介绍了密码输入三次错误后锁定用户功能,需要的朋友可以参考下
    2020-01-01
  • ChatGPT平替- ChatGLM多用户并行访问部署过程

    ChatGPT平替- ChatGLM多用户并行访问部署过程

    这篇文章主要介绍了ChatGPT平替- ChatGLM多用户并行访问部署,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • 5个Linux平台程序员最爱的开发工具汇总

    5个Linux平台程序员最爱的开发工具汇总

    这篇文章主要介绍了5个Linux平台程序员最爱的开发工具汇总,程序最重要的工具就是源码编辑器了,或者是一个全能的IDE,本文就罗列了5个Linux平台最常用的编辑给大家,需要的朋友可以参考下
    2014-09-09
  • 获取键盘键的值 集合 方便监控键盘事件

    获取键盘键的值 集合 方便监控键盘事件

    整理的比较全的键盘值的集合,以后大家在开发过程中,可以直接拿来判断。
    2009-08-08
  • 使用Git向GitHub上传更新内容

    使用Git向GitHub上传更新内容

    这篇文章介绍了使用Git向GitHub上传更新内容的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • csv文件容错处理方法

    csv文件容错处理方法

    这篇文章主要介绍了csv文件容错处理方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • JetBrains Fleet 初体验

    JetBrains Fleet 初体验

    本文主要介绍了JetBrains Fleet 初体验,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • 使用Git Bash向GitHub上传本地项目

    使用Git Bash向GitHub上传本地项目

    这篇文章介绍了使用Git Bash向GitHub上传本地项目的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • Intellij idea2020永久破解,亲测可用!!!

    Intellij idea2020永久破解,亲测可用!!!

    随着 IDEA 的 2020 版本的发布,新增和优化了很多的功能,今天来讲一讲如何永久破解,亲测可用,对idea2020永久破解 教程感兴趣的朋友可以跟随小编一起看看吧
    2020-05-05
  • SVN与Git版本控制的优缺点差异全面分析

    SVN与Git版本控制的优缺点差异全面分析

    这篇文章主要为大家介绍了SVN与Git版本控制的优缺点差异全面分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-04-04

最新评论