透明 发表于 2015-1-18 11:41:02

JAVA网站制作之Java中存储区的分类

再说说缺点:首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。Java中把存储辨别为6类。分离为存放器(register)、栈(stack)、堆(heap)、静态存储区(staticstorage)、常量存储区(constantstorage)和非随机存取存储区(Non-RAM)。1.存放器(register).存放器与其他的存储区分歧,它位于CPU中,以是它是存取速率最快的存储区.可是因为CPU中存放器的数目长短常无限的,以是存放器的利用是由CPU按需举行分派.编程的时分我们没有需要往对它举行间接把持.而且在程序中也没举措找到究竟甚么时分利用了存放器的根据.2.栈(stack).它位于随机存取存储器(RAM)中,并经由过程由CPU间接撑持的栈指针(stackpointer)来举行操纵.栈指针经由过程向下挪动来分派新的存储空间,并经由过程向上挪动来开释存储空间.这是仅次于存放器的另外一种高速无效地分派存储空间的体例.在创立程序时代,Java编译器必需晓得存储在栈上的一切数据的正确巨细和它们的性命周期.如许它才干够发生代码来让栈指针高低地挪动.但这类束缚限定了代码的天真性,以是当某些Java存储区在栈上的时分――出格是,对象援用(objectreference)DD而Java对象自己其实不被存储在栈上.3.堆(heap).这是存储Java一切对象的内存池(一样在RAM地区中).堆的长处是,它不像栈一样,编译器其实不必要晓得它应当从堆平分配多年夜的存储空间,大概存储空间应当在堆上存在多久.因而,在堆上分派多年夜的存储空间具有很年夜的天真性.不管你什么时候必要创立对象,你只必要复杂的在代码中利用关头字new来创立它就好了.在这段代码被实行时分就在堆(heap)下面分派响应的存储空间.固然,为如许的天真性也必要支付必定的价值:在堆上分派存储空间比在栈上分派存储空间要加倍耗时(假如你可以在Java中像在C++一样,在stack上创立对象的话).4.静态存储区(staticstorage).”静态(static)”在这里暗示”在一个流动的地位”(只管它一样在RAM中).静态存储区包含:关于程序的全部运转时代都无效的数据.你可以利用关头字static来指定特别的对象为静态的.可是Java对象本身却历来不安排在静态存储区中.5.常量存储区(constantstorage).常量一般被间接安排在程序代码傍边.这是平安的,由于它们永久不克不及被改动.在某些时分多个常量可以本人分开开,如许在嵌进式体系中能够被恣意地安排在只读存储器(ROM)中.6.非RAM存储区(non-RAMstorage).假如数据完整存在于程序以外,在程序未被运转时数据也能存在,而不受程序的把持.关于此类情形,有两个次要的例子来讲明:一,对象流(streamedobjects),这类对象一般以字撙节的情势被送到其他的呆板往.二,耐久化对象(persistentobjects),这类对象寄存在磁盘上,即使是程序中断今后它们仍旧坚持原有形态.这些存储器都是将对象以某种情势保留在其他的介质中,然后在必要的时分再把它恢复为惯例的基于RAM的对象.Java供应了对轻量级耐久性的撑持.在将来的Java版本中,Java将供应加倍完整的耐久性的撑持.


java是一种面向对象的编程语言,优点是可移植性比较高,最初设计时就是本着一次编写到处执行设计的。可以开发各种应用程序和游戏,不过速度没有c++快,所以一般是不用java来编写应用程序和电脑游戏。

不帅 发表于 2015-1-21 12:49:54

Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)

若天明 发表于 2015-1-24 15:45:42

是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能

谁可相欹 发表于 2015-2-2 05:40:46

在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。

第二个灵魂 发表于 2015-2-6 18:18:09

Java是一种计算机编程语言,拥有跨平台、面向对java

再现理想 发表于 2015-2-12 15:14:50

其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。

小女巫 发表于 2015-2-22 16:13:38

你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。

小魔女 发表于 2015-3-6 09:10:27

在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。

飘飘悠悠 发表于 2015-3-10 21:14:50

另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。

精灵巫婆 发表于 2015-3-12 20:03:13

如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。

深爱那片海 发表于 2015-3-15 22:27:53

Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。

老尸 发表于 2015-3-16 07:56:13

所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。

爱飞 发表于 2015-3-17 04:10:18

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

变相怪杰 发表于 2015-3-23 18:24:57

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

活着的死人 发表于 2015-3-24 23:24:32

你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?

金色的骷髅 发表于 2015-3-31 19:02:56

多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。

简单生活 发表于 2015-3-31 21:59:58

你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?

冷月葬花魂 发表于 2015-4-13 18:44:48

那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!

山那边是海 发表于 2015-4-14 06:28:44

http://www.jdon.com/去下载,或到同济技术论坛的服务器ftp://nro.shtdu.edu.cn去下,安装上有什么问题,可以到论坛上去提问。

莫相离 发表于 2015-5-3 19:07:36

是一种使用者不需花费很多时间学习的语言
页: [1]
查看完整版本: JAVA网站制作之Java中存储区的分类