# 编程语言的分类

编程语言的分类可以从三个角度出发：

## 编译型和解释型

### 编译型

即把源程序的每一条语句都编译成机器语言，并保存为二进制文件，这样运行时计算机可以直接以机器语言来运行此程序。

* 优点：执行速度很快
* 缺点：开发效率低，不能跨平台

常见语言有`C\C++`、`Go`等

### 解释型

只在运行时才一条一条的解释成机器语言给计算机执行。

* 优点：开发效率高，跨平台
* 缺点：运行速度慢

常见语言有`Python`、`PHP`、`JavaScript`

### 混合型

常见语言有`JAVA`、`C#`

## 静态语言和动态语言

### 动态语言

即数据类型是在运行期间检查的，写程序时不用给变量指定数据类型，当你第一次赋值给变量时，就在内部记录下了数据类型。

常见语言有`Python`、`Ruby`、`JavaScript`

### 静态语言

即数据类型是在编译期间检查的，写程序时声明所有变量的数据类型。

常见语言有`JAVA`、`C\C++`、`Go`

## 强类型语言和弱类型语言

### 强类型语言（类型安全）

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

常见语言有`JAVA`、`C\C++`、`Python`、`Go`。

### 弱类型语言

一个变量可以赋不同数据类型的值。

常见语言有`JavaScript`

## 结论

### Python

Python是一门动态解释型的强类型定义语言

### C

C语言是一门静态编译型的强类型定义语言

### JAVA

Java是一门静态混合型的强类型定义语言

### Go

Go是一门静态编译型的强类型定义语言

### JavaScript

JavaScript是一门动态解释型的弱类型定义语言

## 参考链接

> <https://www.cnblogs.com/sunbr/p/11214498.html>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.clay-wangzhi.com/23-wei-fen-lei/bian-cheng-yu-yan-de-fen-lei.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
