首页 > 代码库 > 变量的 声明、存放与作用域
变量的 声明、存放与作用域
变量声明
终极基类。java中所有的类最终都继承自单一的基类——Object。
向上转型:子类转换为基类。向下转型与之相反。
String str; //只是创建引用,并没有创建对象。
变量存放
寄存器
c++可以向编译器建议变量存放在寄存器中。而java不能。
栈(一些书称为“堆栈”)
位于内存中。创建的引用位于栈中。
堆
位于内存中。java所有对象都存在这里。
代码段
代码与常量。
非RAM(即内存)
基本的例子是 流对象 和 持久化对象。在流对象中,对象转化成字节流,通常被发送给另外一台机器。在持久化对象中,对象被存放在磁盘上,因此即便程序终止,对象仍可以保持自己的状态。
基本类型
用 new 创建容量小的、简单的变量效率不是很高。因此对于int char float等基本类型,java与c采用相同方法,不使用“new”来创建,存放于栈中。
java中基本类型所占字节大小不随硬件不同而不同,故更具有可移植性。
java元素类型 | 所占字节 | 包装器类型 |
boolean | - | Boolean |
void | - | Void |
byte | 1 | Byte |
char | 2 | Character |
short | 2 | Short |
int | 4 | Integer |
float | 4 | Float |
long | 8 | Long |
double | 8 | Double |
基本类型对应的包装器类,使得可以在堆中创建一个非基本对象。用来表示对应的基本类型。
所有数值类型都是有符号的。
高精度数字
BingInteger 和 BigDecimal。
数组
C中为了提高运行效率,不检查数组下标越界,程序就可以跑得快。
java永远都做越界检查。
作用域
C++中,变量作用域由花括号的位置决定。java与此既有联系又有区别。
相同之处:变量作用域由花括号的位置决定。
不同之处:
<script src="https://code.csdn.net/snippets/488708.js" type="text/javascript"></script>
变量的 声明、存放与作用域
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。