zoukankan      html  css  js  c++  java
  • 关于java的设计目标

    关于java的设计目标

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

    java白皮书中提到了11个关键目标,下面是对这11个关键术语的理解。

    简单性:java的目标是构建一个无需经过深奥的专业训练就可以编程的系统,并且要符合原有的规范。因此,java很大程度上靠近c++,但是java中删除了c++中很多很少使用的特性,去除c++的复杂性。但是相对于可视化的编程环境,例如VB,java仍然比较复杂。另一方面,简单的另一个要求是小,但是现在java的类已经很多了。

    面向对象:面向对象方面,java的面向对象特性与c++旗鼓相当,java与c++的不同之处在于多继承,在java中,取而代之的接口概念,以及java的元类概念。

    网络技能:java的网络编程非常方便,同时远程方法调用机制使得分布式对象之间可以进行通信。

    健壮性:java的健壮性在于java永远不会存取一个坏的指针,从而造成内存分配的错误,也不必防范内存泄露。同时,java可以满足指针才能满足的灵活性要求。

    安全性:一个永恒的话题,永无止境的话题。

    体系结构中立:java的运行环境是jre,java代码经过编译器编译后生成与体系结构无关的字节码,这样只要有字节码的解释器,就都可以运行。相对于c++编译后生成的机器码,需要解释的字节码运行速度慢一些,但是jvm提供了一些机制来加快字节码的运行,现在看来,java的运行速度是可以满足要求的。

    可移植性:java运行基于jvm,可移植性是必然的。

    解释型:解释型语言的执行速度慢,即使使用了所谓的增量式的链接。现在,使用即时编译器将字节码翻译成机器码,热点代码编译为机器码,运行速度也很快。

    高性能:高性能来源于即时编译,并且相对于传统的编译器更有优势,因为可以获取更多的信息。

    多线程:java中的多线程使用相当方便。Java底层还是使用操作系统或者线程库来实现。

    动态性:java相对于c或者c++而言动态性更强,可以获得运行时对象的信息,非常灵活。

    综上所述,可知java确实是一个十分易用的程序设计平台,而不仅仅是一门语言。

  • 相关阅读:
    CodeForces 660D Number of Parallelograms
    【POJ 1082】 Calendar Game
    【POJ 2352】 Stars
    【POJ 2481】 Cows
    【POJ 1733】 Parity Game
    【NOI 2002】 银河英雄传说
    【NOI 2015】 程序自动分析
    【POJ 1704】 Georgia and Bob
    【HDU 2176】 取(m堆)石子游戏
    【SDOI 2016】 排列计数
  • 原文地址:https://www.cnblogs.com/libs5510/p/4737701.html
Copyright © 2011-2022 走看看