发布网友 发布时间:2022-04-23 09:58
共8个回答
热心网友 时间:2022-04-19 02:31
Java通过JVM实现了“一次编写,到处运行”的特性,由JVM屏蔽掉了不同平台的差异性,并创建了字节码语言来作为Java代码的“汇编语言”,JVM读取字节码文件、解析字节码文件来运行;
JVM提供了垃圾收集器,大部分情况下,程序员不需要自己担心内存的分配和回收;
Java在企业级开发领域具备杀手级框架Spring全家桶,让Java在企业服务领域几无敌手;
Java在客户端开发领域具备杀手级应用场景——Android开发;
Java开发的生态非常丰富和完整,有无数成熟可靠的开源软件;
Java是一门面向对象的静态类型语言,面向对象的特性有助于Java构建大型的、复杂的应用,静态类型语言使得Java在运行时的速度远胜于解释性语言,同时使得Java应用在编译期可以发现很多问题,是类型安全的;
Java一直在发展和进化,Java 1.5补充了很多有用的特性、Java 1.8开始引入stream、lambda等特性来拥抱函数式编程范式、Java 1.9开始支持模块化等等
热心网友 时间:2022-04-19 03:49
作者:丁一
链接:https://www.hu.com/question/31179231/answer/50940672
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
1、Java拥有世界上数量最多的程序员。
虽然大家都称他们为码农,但数量放在那里,最明显的效果就是公司招人的时候会比较容易地招到Java程序员。试想如果你想要做一套软件,你有一个很棒的技术方案需要用C++,Scala或Ruby等语言实现,但招不到足够的人手,那么计划多半泡汤。这时候你的应用Java也能做到,并且很轻松就能招到足够的人,那么你选择Java的可能性就要大一些。
2、Java拥有大量的第三方类库。
假如你想解析HTML,用C/C++这类语言恐怕多半只能自己编写解析算法库了,而如果是Java,你可以非常轻松地在Github上找到JSoup,使用Maven导入依赖后分分钟就搞定HTML。为此还有一句讽刺Java的话是:“我们不生产代码,我们只是Github的搬运工。”这句话从字面上看是很有道理的,但却忽略了对软件生产效率的提升所带来的巨大价值。对于软件的开发,公司的唯一成本其实就是“人头费”,每减少一个月开发时间,就能帮助公司节省几十万几千万的研发成本。
3、Java拥有功能强大的IDE。
Eclipse,通过插件几乎可以满足你开发的任何需求。它虽然有些慢,但你可以通过JVM调优来提高程序的流畅度,千万不要使用默认的JVM参数。不过,IntelliJ Idea已经完全超越Eclipse了,Idea的智能程度几乎可以媲美Win平台下的VS。我是那类离了Vim就活不下去的人,在这两款IDE中都有Vim插件从而让我愉快地存活下去。
4、Java拥有很多杀手级应用。
Spring, Struts, Hibernate, Hadoop, Tomcat, JBoss等等。
5、Java的语法特性很少。
C++相比C添加了大量特性,学起来费事不说,用起来还会降低代码可读性,其实是费了工夫不讨好。当今世界对编程语言的要求是语法简单,代码可读,对性能已经是退而求其次了,因此才诞生了Python, Ruby这样的编程语言。有很多人批评Java语法写起来很臃肿,我承认这一点,但事实是,编程语言从来都不是因为语法臃肿而被淘汰的,决定其生死的是生态系统。
6、Java的性能已足够高。
Sun/Oracle的HotSpot JVM内置的JIT编译器在运行时对字节码已经做出了非常大的优化努力,服务端应用启动后对JVM进行足够的”预热”,并给出合理的启动参数即可。如果不是对性能十分敏感的系统类应用,Java已经足够快了。有一种简单可行的方法可以形象地看出这点,在JVM启动参数中添加+XX:PrintCompilation可以看到JIT编译器的忙碌。当今世界对软件的需求量越来越大,在性能可接受的情况下,开发效率才是第一位的,这也是Python这类动态脚本语言流行的主要原因。
热心网友 时间:2022-04-19 05:23
目前Java程序员如果拥有两年开发经验,他的薪资范围最少都要在10K这个阶段,所以就导致来转行学习Java的人越来越多,毕竟现在做其他很多行业都赚不到什么钱。IT行业还是最赚钱的。
热心网友 时间:2022-04-19 07:15
1)java是纯面向对象编程的语言;
2)平台无关性 (一次编译,到处运行;Write Once,Run Anywhere);
3)java提供了许多内置的类库,通过这些类库,简化了开发人员的设计工作,同时缩短了项目开发时间;
4)提供了对Web应用开发的支持,例如,Applet,Servlet,和JSP可以用来开发Web应用程序,,Socket,RMI可以用来开发分布式应用程序的类库;
5)去除了c++中难以理解,容易混淆的特性(如c++中的多继承,头文件,指针,结构,单元,运算符重载,虚拟基础类,使得程序更加严谨,整洁;
热心网友 时间:2022-04-19 09:23
市场需求,有市场才会有大量的人才输送。
热心网友 时间:2022-04-19 11:47
java技术体系的生态圈很繁荣昌盛,开源组件很多
热心网友 时间:2022-04-19 14:29
适应朝代,懂得改革,不断完善,服务大众。
热心网友 时间:2022-04-19 17:27
java的流行,估计还是天时地利人和的结果。
在微软最风光的时候,大部分的容易上手的开发工具都是基于windows平台的,比如vb,比如delphi,unix平台还没完全移植到x86微电脑平台上,linux也只能算黑客的玩具。
最风光的时候也就是竞争对手空前团结的时候,18摸和sun开始发力,扶持各种能与微软竞争的东西,这时候linux,php与java就脱颖而出,比c与c++简单,容易培养码农,跨平台,方便吸引window平台下的开发者,从库到开发工具全部开源免费,一开始桌面平台的启动运行超慢,但换到服务器领域,没有了用户界面的拖累,运行效率比php强,结构严谨,合适于大规模开发,在当时的条件下,能满足开源(免费),工业化开发,非微软平台,可以快速开发网站系统的,也就只有一个选择,就是java了,乘着第一次互联网风起,最合适的语言当然就给捧得最高。