Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java的好处是什么?_Java - Fatal编程技术网

Java的好处是什么?

Java的好处是什么?,java,Java,我经常听说程序员会为这项工作选择合适的工具。我从来没有用Java编程过,所以我想知道它有什么好处?为什么它如此受欢迎?我应该用它做什么 我只是娱乐性地编程。它有什么特别有趣的地方吗?在我看来,跨平台是最相关的好处 Java的主要目标是创建一种可以在任何地方运行的编程语言。目标是GUI应用程序。然而,这种情况从未发生过,因为一开始环境太慢(现在已经改善了),但在服务器端证明了这一点,开发成本大大降低,因为产品开发可以在PC机上完成,部署在非常昂贵的硬件上 它也带来了开发的方便,因为它被设计成具有类

我经常听说程序员会为这项工作选择合适的工具。我从来没有用Java编程过,所以我想知道它有什么好处?为什么它如此受欢迎?我应该用它做什么


我只是娱乐性地编程。它有什么特别有趣的地方吗?

在我看来,跨平台是最相关的好处

Java的主要目标是创建一种可以在任何地方运行的编程语言。目标是GUI应用程序。然而,这种情况从未发生过,因为一开始环境太慢(现在已经改善了),但在服务器端证明了这一点,开发成本大大降低,因为产品开发可以在PC机上完成,部署在非常昂贵的硬件上

它也带来了开发的方便,因为它被设计成具有类似C++的语法,但在虚拟平台上运行以避免平台特定代码。起初,惩罚是执行速度,因为它是被解释的,但是一个又一个版本的解释器变得越来越快,甚至微软也在java之后为它的下一代开发建模并称之为.net

此外您可以阅读Java设计目标

  • 便携性
  • 令人难以置信的图书馆
  • 自下而上安全
  • 演出
  • 健壮性

我认为在12年左右的时间里,“写一次,到处跑”的口号几乎是正确的。编写Java代码将您与部署它的系统的平台相关方面隔离开来。

大量的社区、帮助、库、IDE数量巨大(这是一件好事)。

使用Java的原因只有两个:

  • Java虚拟机(热点)
  • 大量可用的库和工具

< P>对于一个休闲程序员来说,Java可以教给很多面向对象编程,并且鼓励一般好的编程习惯,而不必担心像“C++”、“java”之类的“杂乱”细节(指针、内存管理)中的许多细节。 调试“灾难性”错误也更容易一些。

Java非常擅长集成—有一些规范和实现可用于集成在“企业”环境中可能遇到的多种系统


与流行的高级语言相比,Java并不是一种真正“有趣”的语言。

这似乎得到了健康的答案,但您可能还想看看Java是一种好语言,但它的重要性仅次于它附带的标准库。jdk可能不是有史以来最优雅的工具包,但它是广泛、强大和可靠的。用Java编程语言很简单。适当重用jdk进行编程就是它的全部内容

在使用Java一段时间后,我得出结论,用Java编写是很有趣的,受到一些非常令人恼火的方式的限制,而且它的性能很好,尽管看起来许多程序都被糟糕的设计所削弱

我不确定后者是Java的功能,还是Java的效果

在这两种情况下,除了上述所有好处外,它对于做“网络”相关的事情非常有用。使用简化的接口处理资源,而不管特定资源在哪里等


它决不是万能的锤子。

我想补充一点:Java与早期版本保持良好的兼容性。这意味着,Java项目在大多数情况下都是编译和运行的,在新版本上没有任何问题。这似乎有点道理,但API和语言的稳定性有助于围绕Java构建一个大型社区,包括良好的工具支持

其他人已经提到了其他要点:

  • 良好的便携性
  • 几乎任何东西都有很多图书馆
  • 易于调试和捕获问题

面向对象编程提供了传统编程所不具备的类似于百科全书、继承和多态性的功能。面向对象编程更接近于编程的真实表现形式 1.可以使用继承来表示关系
2.由于模块化程度的提高,程序开发变得容易了

Java没有被解释……而且MS Modeling.NET after Java并不完全正确,至少在过去几年中,MS确实在创新方面处于领先地位。实际上Java是一种解释。在最初的白皮书中,这是主要目标之一:解释的方式取决于具体的实现,JIT是一项重大优化。或者更确切地说,解释独立于平台的字节码。他的意思可能是,在执行过程中,通常不解释它,对于.NET应用程序也是如此。CLR和大多数JRE现在都会在Java字节码第一次执行时将其JIT编译成本机代码。为了给混合带来一些乐趣,Hotspot在第一次运行时确实会解释代码。这对于只运行一次的代码(例如参数解析)更有效。它很快决定在适当的时候将其编译成本机代码。难道不是所有高级语言都会这样做吗?还是Java真的做得很好?我在试着决定它是否值得用…不是很多语言都这么做。很多语言都是标准化的,这样你就可以经常编写在大多数平台上编译的代码,但你不能一次编译它们并在任何平台上运行它们。不是所有的高级语言。有些是这样。Java做得很好,“写一次”绝对是一个咒语,甚至是一个口号。由于无法抽象过多的类型构造函数,您必须准备以微妙不同的方式反复编写相同的内容。是的,很多高级语言和平台在某种程度上都这样做。使用Python、Perl、Ruby或PHP,它将在每个平台上都能完美工作,直到您需要一个难以使用的第三方库