活力 JAVA 旅行二

原创 2005年03月01日 18:10:00

数据存储:
class field 变量 不进行初始化也得到一个默认的值.
非class field 变量将不会有这个保障.

JAVA数据存储
(1) 寄存器(registers)。这是最快的存储区域,因为它位于和其他所有保存方式不同的位置:处理器内部。然而,寄存器的数量十分有限,所以寄存器是根据需要由编译器分配。你非但不能直接控制寄存器,甚至连它存在的证据也找不到.
(2) 栈(stack)。位于“常规内存区(general random-access memory area)“里,处理器可以通过stack pointer堆它进行直接访问.stack pointer向下移动就创建了新的存储空间,向上以为着释放内存空间.这是仅次于寄存器最快,最有效率的分配内存的方法.由于JAVA编译器必须生成能控制栈指针上移或下移的代码,所以程序编译的时候,那些被存储在栈中的数据的大小和生命周期必须是已知的.这使得程序的灵活性受到了限制,所以尽管JAVA把某些数据如对象的reference存放在栈里,但对象本身并没有放在栈里,而是放在heap里.
(3) 堆。一种常规用途的内存池(也在RAM区域),其中保存了Java对象。和堆栈不同,“内存堆”或“堆”(Heap)最吸引人的地方在于编译器不必知道要从堆里分配多少存储空间,也不必知道存储的数据要在堆里停留多长的时间。因此,用堆保存数据时会得到更大的灵活性。要求创建一个对象时,只需用new命令编制相关的代码即可。执行这些代码时,会在堆里自动进行数据的保存。当然,为达到这种灵活性,必然会付出一定的代价:在堆里分配存储空间时会花掉更长的时间!
(4) 静态存储。这儿的“静态”(Static)是指“位于固定位置”(尽管也在RAM里)。程序运行期间,静态存储的数据将随时等候调用。可用static关键字指出一个对象的特定元素是静态的。但Java对象本身永远都不会置入静态存储空间。
(5) 常数存储。常数值通常直接置于程序代码内部。这样做是安全的,因为它们永远都不会改变。有的常数需要严格地保护,所以可考虑将它们置入只读存储器(ROM)。
(6) 非RAM存储。若数据完全独立于一个程序之外,则程序不运行时仍可存在,并在程序的控制范围之外。其中两个最主要的例子便是“流式对象”和“固定对象”。对于流式对象,对象会变成字节流,通常会发给另一台机器。而对于固定对象,对象保存在磁盘中。即使程序中止运行,它们仍可保持自己的状态不变。对于这些类型的数据存储,一个特别有用的技巧就是它们能存在于其他媒体中。一旦需要,甚至能将它们恢复成普通的、基于RAM的对象。


static关键词:

声明数据或者方法是STATIC的时候就是说没有被连到类的任何一个实例之上,因此即便你从没创建过那个类的对象,你也可以调用其STATIC方法或者访问其STATIC数据.它有一段保存这些数据的内存.不能在static方法里调用非static方法.不通过对象直接调用static方法才是static方法的本意.类的static方法只能访问其他static 方法和static数据成员.static数据只初始化一次。



java反射,让代码充满活力(一)

在java编程的行当中,IT攻城狮们想必对反射这个字眼并不陌生,无论是我们想要在运行状态中获取任意一个类的所有属性或者方法,还是调用任意一个对象的方法和属性,甚至是修改它的某个属性和方法,我们都可以找...
  • YSC1123
  • YSC1123
  • 2016年06月08日 11:43
  • 530

jQuery实战学习笔记(二)-用jQuery为页面添加活力

操作元素样式,创建、复制、移动、替换、追加、删除、包裹元素
  • macanfa
  • macanfa
  • 2016年05月18日 19:44
  • 495

旅行商问题-A*算法-java

  • 2017年04月16日 12:16
  • 4KB
  • 下载

旅行商问题-退火算法--java

  • 2017年04月16日 12:14
  • 1KB
  • 下载

算法java实现--分支限界法--旅行售货员问题

最大团问题的java实现(优先队列式分支限界法) 具体问题描述以及C/C++实现参见网址 http://blog.csdn.net/liufeng_king/article/details...

java用遗传算法解决旅行商问题

  • 2015年10月04日 12:19
  • 8KB
  • 下载

java编写的旅行售货员问题算法

  • 2009年11月18日 20:15
  • 4KB
  • 下载

蚁群算法实现TSP(旅行商)问题(java语言)

旅行商问题,即TSP问题(Traveling Salesman Problem)是数学领域中著名问题之一。假设有一个旅行商人要拜访N个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而...

旅行商问题-遗传算法--java

  • 2017年04月16日 12:04
  • 2KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:活力 JAVA 旅行二
举报原因:
原因补充:

(最多只允许输入30个字)