02 # 类型基础:强类型与弱类型

简介: 02 # 类型基础:强类型与弱类型

宽泛的定义

在强类型语言中,当一个对象从调用函数传递到被调用函数时,其类型必须与被调用函数中声明的类型兼容 – Liskov, Zilles 1974


通俗定义

强类型语言不允许改变变量的数据类型,除非进行强制类型转换

比如下面 Java 里不能将布尔类型转化为整型

下面这个是 Java 进行了强制类型转换,将字符 a 转为了 ASCII 值


在弱类型语言中,变量可以被赋予不同的数据类型

下面就是 JavaScript 中例子:变量可以进行不同类型的赋值



目录
相关文章
|
7月前
|
编译器 C++ 开发者
在C++语言中声明语言的作用类型
在C++语言中声明语言的作用类型
65 0
|
2月前
|
JavaScript 前端开发 程序员
动态语言、静态语言、强类型语言、弱类型语言的区别
动态语言、静态语言、强类型语言、弱类型语言的区别
|
3月前
|
存储 前端开发 JavaScript
前端基础(三)_JavaScript数据类型(基本数据类型、复杂数据类型)
本文详细介绍了JavaScript中的数据类型,包括基本数据类型(Number、String、Boolean、Undefined、Null)和复杂数据类型(Object),并解释了如何使用`typeof`操作符来识别变量的数据类型。同时,还讨论了对象、函数和数组等复杂数据类型的使用方式。
66 2
|
3月前
|
存储 C语言 索引
C 语言数据类型详解
C语言中的数据类型主要包括基本数据类型、构造数据类型和用户定义数据类型。基本类型如整型(`int`)、字符型(`char`)、浮点型(`float`)、双精度浮点型(`double`)和无符号整型(`unsigned int`)。构造类型包括数组(`Array`)、结构体(`Struct`)、共用体(`Union`)和枚举(`Enum`)。用户定义类型则通过`typedef`为已有类型定义新名称,并可通过结构体和共用体自定义复合数据结构。此外,还有指针类型用于存储变量地址,以及`signed`、`unsigned`、`short`、`long`等类型修饰符。
113 11
|
7月前
|
存储 测试技术 C++
03 # 类型基础:动态类型与静态类型
03 # 类型基础:动态类型与静态类型
67 0
|
7月前
|
存储 编译器 C++
C++语言的变量和数据类型
C++语言的变量和数据类型
|
7月前
|
JavaScript 安全
TypeScript 中的高级类型转换技术:映射类型、条件类型和类型推断
TypeScript 中的高级类型转换技术:映射类型、条件类型和类型推断
|
7月前
|
存储 编译器 C++
C++语言中类型定义
C++语言中类型定义
167 0
|
7月前
|
存储 C++
C++语言中数据类型-自定义类
C++语言中数据类型-自定义类
46 0
|
7月前
|
C++ Rust NoSQL
Rust 数据类型 之 类C枚举 c-like enum
Rust 数据类型 之 类C枚举 c-like enum
64 0
Rust 数据类型 之 类C枚举 c-like enum
下一篇
DataWorks