一切都是对象(1)
/**Java 语言假设我们只进行面向对象的程序设计**/
用引用操作对象:
1、编程语言操纵内存元素的方式:(1)、直接操纵元素(汇编)(2)、基于特殊语法的间接表示(C、C++的指针)
2、JAVA,一切都被视作对象---->可以采用单一固定的语法。
3、用引用操纵对象:操纵的标识符是对象的一个“引用”。
String s = "asdf";
Java语言特性之一:字符串可以用带引号的文本初始化。
必须由你创建所有对象:
1、关键字new:给我一个新对象。---->String s =new String ("asdf"); String 、New 均为关键字
2、存储到什么地方:
(1)、寄存器: 优点:速度最快(位于处理器内部) 缺点:数量有限、JAVA不能直接控制(C、C++可以提供建议分配)
(2)、堆栈:常存放对象引用 优点:可以通过堆栈指针进行控制(位于RAM),快速有效的分配存储方式 缺点:Java系统必须知道存储在堆栈内的项的确切生命周期,限制了灵活性
(3)、堆:存放所有JAVA对象 优点:不需要知道存储的数据在堆里存活多长时间,灵活性强 缺点: 耗时
(4)、常量存储:程序代码内部
(5)、非RAM存储:把对象转化成可以存储在其他媒介上的事物。
RAM(随机访问存储器)与ROM(只读存储器):RAM掉电信息被擦出,ROM掉电信息保留
3、基本类型:(小的、简单的变量;直接存储“值”,并置于堆栈中)
(1)、Java确定每种类型所在存储空间大小,并保持不变,所以比其他大多数语言编写的程序更具可移植性。
(2)、boolean(ture or false)、char、byte、short、int、long、float、double、void
(3)、所有数值类型都有正负号
(4)、高精度数字(以速度换精度):BigInteger(支持任意精度的整数)、BigDecimal(支持任何精度的定点数)。
4、Java数组:
(1)、C、C++数组就是内存块,容易出系统错误
(2)、java数组会被初始化(null),且不能访问他范围之外的数据
永远不需要销毁对象:
1、作用域:
java不允许:
{
int x=12;
{
int x=69;
}
}
而C、c++允许。
2、对象的作用域:
{
String s = new String (“a String ”);
}
s在作用域终点就消失了,但s仍占内存空间;
3、Java内有垃圾回收器:监视用new创建的所有对象,并辨别那些不再被引用的对象,释放内存。

浙公网安备 33010602011771号