Java千百问_06数据结构(001)_java中数据类型是什么
2016-04-30 09:50
423 查看
点击进入_更多_Java千百问
强类型意味着每个变量都具有一种类型,并且每种类型都是严格定义的(当然泛型比较特殊,看这里:泛型是什么),类型限制了变量可以赋哪些值,表达式最终产生什么值。同时限制了这些值可以进行的操作类型以及具体方法。所有的赋值操作,无论是显式的还是在方法调用中通过参数传递,都要进行类型兼容性的检查。
这里说的类型,可以是java提供的8种基本类型(primitive type),也可以是java中的其他类类型(也叫引用类型 reference to object,当然包括比较特殊的String、Array、Collection类型)和自定义的类类型。每个类类型是由若干基本类型组成,最终储存在堆中的。
了解8种基本数据类型:java有哪8种基本数据类型
了解java内存堆栈看这里:
其次,获取基本数据类型直接从栈中获取,而获取类类型对象需要先在栈中获取堆逻辑地址,再根据这个地址去堆中获取。
1、什么是数据类型
java语言是静态类型的(statical typed),也就是说所有变量和表达式的类型再编译时就已经完全确定。由于是statical typed,导致Java语言也是强类型(Strong typed)的。强类型意味着每个变量都具有一种类型,并且每种类型都是严格定义的(当然泛型比较特殊,看这里:泛型是什么),类型限制了变量可以赋哪些值,表达式最终产生什么值。同时限制了这些值可以进行的操作类型以及具体方法。所有的赋值操作,无论是显式的还是在方法调用中通过参数传递,都要进行类型兼容性的检查。
这里说的类型,可以是java提供的8种基本类型(primitive type),也可以是java中的其他类类型(也叫引用类型 reference to object,当然包括比较特殊的String、Array、Collection类型)和自定义的类类型。每个类类型是由若干基本类型组成,最终储存在堆中的。
了解8种基本数据类型:java有哪8种基本数据类型
了解java内存堆栈看这里:
2、基本数据类型和类类型都是如何储存的
首先,基本数据类型将值储存在栈中(directly contain value),而类类型对象(对象是由若干基本数据类型构成)是储存在堆中,将堆的逻辑地址储存在栈中。均是值传递(引用传递是伪概念,了解引用传递和值传递看这里:引用传递和值传递有什么区别)。其次,获取基本数据类型直接从栈中获取,而获取类类型对象需要先在栈中获取堆逻辑地址,再根据这个地址去堆中获取。
相关文章推荐
- springmvc中的RequestBody自动注入List, Map, String数据结构的数据
- 链表的倒序打印
- poj 初级训练计划数据结构总结
- 一、hbase的核心数据结构
- 数据结构与算法分析(1)引论
- C语言数据结构学习网站
- hdu 4193(单调队列)
- 快速排序
- delphi.数据结构.链表
- 集合框架(用LinkedList模拟栈数据结构的集合并测试案例)
- 数据结构排序算法之归并排序
- 冒泡排序
- 希尔排序
- 数据结构之字符串ADT
- 数据结构与算法——有向无环图的拓扑排序C++实现
- 排序算法性能比较练习——《数据结构、算法与应用》
- 基本数据结构
- 数据结构------绪论
- 关于程序运行时的数据结构
- 学JS必看-JavaScript数据结构深度剖析