(一)Java程序设计概述

    1.1Java程序设计平台

        Java并不是一种语言,Java是一个完整的平台,有一个庞大的库,其中包含了很多可重用的代码和一个提供诸如安全性、跨操作系统的可移植性以及自动垃圾回收等服务的执行环境。


    1.2Java白皮书中的关键术语

        1.2.1简单性

             java语法是C++语法中的一个“纯净”版本。这里没有头文件、指针运算(甚至指针语法)、结构、联合、操作符重载、虚基类等等。然而并没有试图清除C++中所有的不适合的特性,例如,switch语句中的语法在Java中就没有改变。

            简单的另一个方面是小。Java的目标之一是支持开发能够在小型机器上独立运行的软件。基本的解释器以及类支持大约仅为40KB;再加上基础的标准类库和对线程的支持(基本上是一个自包含的微内核)大约需要175KB。当时,这是一个了不起的成就,当然,由于不断扩展,类库已经相当庞大了。


        1.2.2面向对象

            简单地讲,面向对象设计将重点放在数据(即对象)和对象的接口上。在本质上,Java的面向对象的能力和C++的是一样的。


       1.2.3网络技能

            Java有一个扩展的例程库,用于处理想Http和Ftp这类的TCP/IP协议。Java应用程序能够通过URL打开和访问网络上的对象,其便捷程度就好像访问本地文件一样。Java将类似打开Socket链接这类繁重的任务变得如此简单,另外远程方法调用机制使得分布式对象之间可以进行通信。

      

       1.2.4健壮性

            Java和C++的不同在于Java采用的指针模型可以消除重写内存和损坏数据的可能性。Java编译器能够检测许多在其他语言中仅在运行时刻才能够检测出来的问题。Java是绝对安全的,其原因是永远不会存取一个“坏的”指针,造成内存分配的错误,也不必防范内存泄露。


        1.2.5安全性

            使用Java可以构建设防病毒、防篡改的系统。Java的安全机制比ActiveX要强得多,因为它是在应用程序运行时加以控制并制止恶意性破坏的(基于ActiveX技术的竞争代码传输机制,其安全性完全依赖于数字签名)。

 

        1.2.6体系结构中立

             编译器生成一种体系结构中立的目标文件--字节码,解释字节码肯定会比全速运行机器指令慢很多,然而虚拟机有个选项,可以将使用最频繁的字节码序列翻译成机器码,这一过程称为即时编译,同时虚拟机可以检测指令序列的行为,以增强其安全性。


        1.2.7可移植性

             在Java中,数据类型具有固定的大小,这消除了代码移植时令人头疼的主要问题。二进制代码以固定的格式进行的存储和传输,消除了字节顺序的困扰。字符串是用标准的Unicode格式存储的。

       

        1.2.8解释型

              Java解释器可以在任何移植 了解释器的机器上执行Java字节码。


        1.2.9高性能

             即时编译器可以监控经常执行的哪些代码并优化这些代码以提高速度,更为复杂的优化是消除函数调用(内嵌)。即时编译知道哪些类已经加载了,如果基于当前加载的类集,且特定的函数不被覆盖的话就可以内嵌,必要时还可以撤销优化。

 

        1.2.10多线程

             Java并没有花费太多的力气对此实现平台的无关性,不同的机器上,只是调用多线程的方法完全相同,Java把多线程交给了底层的操作系统或者线程库来完成,尽管如此,多线程的编译的简单性是Java成为颇具魅力的服务器端开发语言的主要原因之一。


        1.2.11动态性

             在Java中找出运行时类型信息十分简单。


            

            

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值