温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》
  • 首页 > 
  • 教程 > 
  • 开发技术 > 
  • 强类型语言/弱类型语言、动态语言/静态语言、编译型语言/解释型语言(整理)

强类型语言/弱类型语言、动态语言/静态语言、编译型语言/解释型语言(整理)

发布时间:2020-07-08 06:34:15 来源:网络 阅读:2018 作者:RQSLT 栏目:开发技术

【强类型语言/弱类型语言】

  • 强类型语言偏向于不容忍隐式类型转换。强类型语言有 Java、C#、Python 等。示例如下(Python):

>>> 67 + 8
75
>>> 67 + '8'
Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    67 + '8'
TypeError: unsupported operand type(s) for +: 'int' and 'str'
  • 弱类型语言偏向于容忍隐式类型转换。弱类型语言有 C、C++、JavaScript 等。示例如下(JavaScript):

> 67 + 8
75
> 67 + '8'
"678"
  • 无类型语言:汇编


【动态语言/静态语言】

  • 动态语言是运行时检查变量类型的语言。动态语言有 Python、JavaScript 等。示例如下(Python):

>>> a = 7
>>> type(a)
<class 'int'>
>>> a = 'z'
>>> type(a)
<class 'str'>
  • 静态语言是编译时检查变量类型的语言。静态语言有 C、C++、Java、C# 等。


【编译型语言/解释型语言】

  • 编译型语言需通过编译器将源代码编译成机器码,之后才能执行。一般需经过编译、链接这两个步骤。编译型语言有 C、C++ 等。

  • 解释性语言的程序不需要编译,相比编译型语言省了道工序,解释性语言在运行程序的时候才逐行翻译。解释型语言有 Python、JavaScript 等。

  • 半编译/半解释型语言,编译时不生成机器码,生成中间码(/字节码)。代码语言有 Java、C# 等。(Java 执行时接近解释型,C# 执行时接近编译型)


【强弱动静象限图】(图片来源:Dynamic Typing is NOT Weak Typing)

强类型语言/弱类型语言、动态语言/静态语言、编译型语言/解释型语言(整理)



本文根据以下两篇文章整理:

1、知乎:弱类型、强类型、动态类型、静态类型语言的区别是什么?

2、100多种编程语言学什么?编程范型/编程范式

3、有什么编译型语言是动态类型的吗?


*** walker ***


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI