java基础(一)--一切都是对象

这是对java的再一次整合学习,在看《JAVA编程思想》后的一些记录;理解不当欢迎指正;java

1.用引用操做对象,你拥有一个引用,并不须要有一个对象与之关联:数据库

eg:String s;编程

这里建立的只是引用,并非对象;这里其实至关于只是建立一个指针(有些不太恰当,但便于理解),但并无一个明确指向;数组

安全的建立:String s = "abc";  或者String s = new String("abc");安全

2.存储:学习

a.寄存器:这是最快的存储区;寄存器根据需求分配,不能直接控制指针

b.堆栈:位于通用RAM中,能够经过堆栈指针从处理器得到支持;通常对对象的引用的存储;须要知道确切的生命周期;对象

c.堆:一种通用的内存池,用于存放全部的JAVA对象;不须要知道生命周期;生命周期

d.常量存储:常量值内存

e.非RAM存储:流对象和持久化对象(在其余地方存储,数据库)

3.数组:

java确保数据组会被初始化,并且不能在它的范围以外被访问。这种范围检查,是以每一个数组上少许的内存开销及运行时的下表检查为代价;

a:默认没有初始化为null;一旦java看到null,就知道这个引用尚未指向某个对象。

b:建立用来存放基本数据类型的数组;为了确保初始化,置为0;

4.做用域:做用域的位置有花括号决定

在C和C++中将一个较大的做用域的变量“隐藏”起来,java中不行:

eg:java中报错,编译器将报告x已经定义过;

{

  int x = 12;

  {

    int x = 96;

  }

}

a.对象的做用域:java对象不具有和基本类型同样的生命周期;当new一个对象时,它能够存活在做用域以外

{

  String s = new String("abc");

}

引用s在做用域终点就消失了。而,s指向的对象仍然占据内存;

为了不“内存泄漏”,java自带垃圾回收机制。

5.static关键字:

两种状况:第一种,只想为某特定域分配单一存储空间,不用考虑建立多少对象,或者不建立对象;

第二种,但愿某个方法不包含与它的类的任何对象关联在一块儿,即没建立对象能够调用方法;

就是一个类定义了一个static数据成员,无论建立几个该类对象,都不会再对该成员分配空间;全部对象共享一块这一个数据成员;

6.javadoc:这是为了方便管理程序,生成的注释文档;需本身配置;

相关文章
相关标签/搜索