您的位置:jsp学习站首页 >> JAVA类 >> JAVA基础 >> 漫谈EJB (1)

漫谈EJB (1) (3)

[ 来源:互网络 | 更新日期:2007-09-02 20:02:06 | 浏览次数:16727]
简介:4中,Java语言就能够支持Assertment机制和Perl语言中最有用的正则表达式机制。    Java语言主要由以下五种元素组成:标识符、关键字、文字、运算符和分隔符。这五种元素有着不同的语法含义和组成规则,它们互相配合,共同完成Java语言的语意表达。    1:标识符。变量,类和方法都需要一定的名称,我们将这种名称叫做标识符。    2:关键字。关键字是Java语言本身使用的标识符,它有其特定的语法含义。所有的Java关键字将不能被用作标识符。    3:数据类型。Java有着不同的数据类型。比较值得一提的是字符串数据类型,字符串数据类型是用一对双引号括起来的字符序列,字符串数据实际上是由String类所实现,而不是C语言中所用的字符数组。每一个字符串数据将产生一个String类的新的实例,用户不必对字符串与类这个概念发生关系而感到担心,由于类的特性,你不必担心如何去实现它们,它们会自己照顾好自己,需要说明的是字符串在Java里作为类只是出于安全的考虑。    4:运算符。任何语言都有自己的运算符,Java语言也不例外,如+、-、*、/等都是运算符,运算符的作用是与一定的运算数据组成表达式来完成相应的运算。对不同的数据类型,有着不同的运算符。     5:分隔符。分隔符用来使编译器确认代码在何处分隔。‘’‘’‘;’‘:’都是Java语言的分隔符。    学习 Java 语言很简单,毕竟 Java 语言也只包含五十多个关键词(keyword)与几十个算符(operator),再加上 Java 语法(syntax)也很简单,所以一般人可以很快就学会 Java 语言。危险的是,很多人认为已经完全掌控 Java 语言,但其实对于内部的运作机制仍不能掌握,这些盲点有时候会让你无法完全掌控 Java 语言。克服这些盲点的方式是看「The Java Language Specification, 2nd Ed
资源访问控制(包括本地文件系统访问、Socket连接访问)。

    3、 代码数字签名(通过数字签名来确认代码源以及代码是否完整)。

    Java的源代码是先编译成为一种字节码的中间代码,存放这种代码的文件就是.class的文件。真正执行的时候是将class文件装载到JVM(虚拟机)中,然后由JVM解释执行的。所以数组的上下界检查及合法的类型转换是通过JVM得到保证的。Java通过一个类装载器类(ClassLoader)将虚拟机代码文件(即class文件)装载到JVM中,当完成装载后,一个被称做安全管理器(SecurityManager)的类开始运行,例如当一个Applet的class文件被缺省的类装载器装载到JVM中后,JVM会立即为它装载一个SecurityManager的子类AppletSecurity,由这个管理器来验证操作。代码的所有动作(例如文件读写)都要先经过验证,只有被该安全管理器接受的动作才能完成,否则就会抛出SecurityException异常。

    对于JDK1.0,权限被笼统的划分为两大块。一是拥有所有的权限,一个是仅拥有"沙箱"(sandBox)权限,这也是普通的Applet所拥有的权限。这时本地文件读写或是与源主机(Orignal Server)以外的主机连接都是被禁止的。这种划分的最大问题就是缺乏灵活性。例如我们希望一个Applet在用户信任的情况下能够对本地文件系统的某个目录进行读写,但并不要通过Socket与其它主机连接。这是JDK1.0的权限划分就不能达到要求。JDK1.1后改进了权限的划分,引入了权限集(PermissionSet)的概念。

    由于我们的文章并不是讨论JVM,因此,我们只是对JVM做一个简单的介绍。如果需要详细了解的,可以参考『The JavaTM TMVirtual Machine Specification』。

客观的看待Java

    相对于其他编程语音,Java有一个无庸置疑的优点:用户以及编译器第一次不必了解生成可执行代码的特定CPU细节。Java引入了一个编译代码中间层,叫做字节代码,并使用一个虚拟抽象的机器,而不是一个真实的机器。当Java编译器结束了一个源文件的编译后,你所得到的不是可以立即在一个给定平台上运行的代码,而是可以在任何真实的平台上运行的字节代码,唯一的条件就是这个平台要理解和支持Java。这些发展包含着一个文化的变革。作为一个开发人员,你只需要确定Java虚拟机(JVM)提供的抽象层,不同的OS销售商负责执行代码层,从而将中立于平台的字节代码映射到主机平台的机构中。在这种情况下,Java似乎是统一分布式计算机世界的领袖候选人了。“编写一次,永远运行”(并且无论在哪里)就成为Java诱人但却真实的口号。

    但我们平心而论,Java的跨平台并不是一个非常诱人的特性?跨平台理论的发展很好地证明了这一点。我们看到,将Java代码从一个平台移植到另一个平台?Java这个语言最重要和最受吹捧的特点?并不象宣传的那样容易。任何Java平台都有其自己的虚拟机,它可以理解通用的字节代码,并且及时地将其编译为本地代码。矛盾由此产生,不同虚拟机的执行也很不相同,这一点足以使代码的移植比预期耗费多得多的时间,而且基本上不是自动的。在企业用户的角度上来说,也很少会有企业会频繁的更换平台,因此这个特性是否能够带来高价值是很难评价的。

    那么,Java模型的好处在哪里呢?首先,Java是一种先进的、面向对象的语言,包含了预防常见错误的内置功能,并在仅仅一两个对象中携带了许多经常需要用到的功能。与C++相比,Java更易于读写,不容易出错,而且更加美观,但是它速度较慢也不太灵活。想实现在任何
[1] [2] [3] [4] [5] [6] [7] [8]
Tags:关键字:漫谈EJB (1)
责任编辑:glen