一.变量类型
1.primitive主数据类型
声明变量:
变量需要名称和类型
小心溢出
- int : 32bits
- double :64bits
- float :32bits
- byte : -128~127
- boolean :“true” or “false”
避开关键词
- 名称必须以字母、下划线(_)或者$符号开头,不能够用数字开头。
- 除了第一个字符之外,后面就可以用数字。反正不要用在第一个字符就行。
- 只要符合上述两条规则,你就可以随意地命名,但还得要避开Java的保留字。
2.引用
- 事实上没有对象变量这样的东西存在。
- 只有引用(reference)到对象的变量。
- 对象引用变量保存的是存取对象的方法。
- 它并不是对象的容器,而是类似于指向对象的指针。或者可以说是地址。但在Java中我们不会也不该知道引用变量中实际装载的是什么,它只是用来代替单一的对象。只有Java虚拟机才会知道如何使用引用来取得该对象。
举例:
在垃圾收集堆上的生活
Book b = new Book();
Book c = new Book();
/* 引用数: 2
对象数: 2
*/
Book d = c;
/* 引用数: 3
对象数: 2
*/
堆上的生与死
Book b = new Book();
Book c = new Book();
/* 引用数: 2
对象数: 2
*/
b = c;
/* 对象以被抛弃且能够作为垃圾收集器(GC)
引用数: 2
对象数: 2
对象以已经没有引用,变成无法存取的
*/
c = null;
/* 作用中的引用数: 1
null引用数: 1
可存取对象数: 1
被抛弃对象数: 1
*/
数组犹如杯架
int[] nums; //声明一个int数组变量. 数组变量是数组对象的遥控器.
nums = new int [7]; //创建大小伟7的数组,并将它复制给之前声明为int[]的变量nums.
nums[0] = 6;
/*
...
*/
创建dog数组
Dog[] pets; // 声明一个Dog数组变量.
pets = new Dog[7];
// 此时还需要实际的Dog对象
此处内容需要评论回复后(审核通过)方可阅读。