Java 为什么如此流行?

尽管 Java 已经 25 岁了,但仍然“宝刀未老”。在 Stack Overflow 2019 年流行编程语言调查报告中,Java 位居第 5 位,有 41% 的受调开发者认为 Java 仍然是一门受欢迎的编程语言。

很多大型的互联网公司都在使用 Java,国内最有名的当属阿里巴巴,国外最有名的当属谷歌。那为什么 Java 如此流行呢?

1)简单性

Java 为开发者提供了简单易用的用户体验,与其他面向对象编程语言相比,Java 的设计和生态库具有巨大的优势。Java 剔除了 C++ 中很少使用、难以理解、易混淆的特别,比如说指针运算、操作符重载,内存管理等。

Java 可以做到堆栈分配、垃圾回收和自动内存管理,在一定程度上为开发者减轻了入门的难度。

2)可移植性

如果 Java 直接编译成操作系统能识的二进制码,可能一个标识在 Windows 操作系统下是1100,而 Linux 下是 1001,这样的话,在 Windows 操作系统下可以运行的程序到了 Linux 环境下就无法运行。

为了解决这个问题,Java 先编译生成字节码,再由 JVM(Java 虚拟机)来解释执行,目的就是将统一的字节码转成操作系统可以识别的二进制码,然后执行。而针对不同的操作系统,都有相应版本的 JVM,所以 Java 就实现了可移植

教妹学Java:Java 为什么如此流行?相关推荐

  1. 教妹学Java(十四):switch 语句详解

    大家好,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员.本篇文章通过我和三妹对话的形式来谈一谈"switch 语句". 教妹学 Java,没见过这么有趣的标题吧?&q ...

  2. 教你学java_教妹学Java:Spring 入门篇

    你好呀,我是沉默王二,一个和黄家驹一样身高,刘德华一样颜值的程序员(管你信不信呢).从两位偶像的年纪上,你就可以断定我的码龄至少在 10 年以上,但实话实说,我一直坚信自己只有 18 岁,因为我有一颗 ...

  3. 教妹学 Java:大有可为的集合

    本篇通过一种趣味化的形式来讲述 Java 的集合. 00.故事的起源 "二哥,上一篇<泛型>的反响效果怎么样啊?"三妹对她提议的<教妹学 Java>专栏很是 ...

  4. 教妹学Java:接口,抽象的另一种表现方式

    接口 "哥,我看你朋友圈说<教妹学 Java>专栏收到了第一笔赞赏呀,虽然只有一块钱,但我也替你感到开心."三妹的脸上洋溢着自信的微笑,仿佛这钱是打给她的一样. &qu ...

  5. 教妹学Java(九):一文搞懂Java中的基本数据类型

    大家好,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员.本篇文章通过我和三妹对话的形式来谈一谈"Java 中的数据类型". 教妹学 Java,没见过这么有趣的标题吧? ...

  6. 教妹学Java(二十六):static 关键字解析

    你好呀,我是沉默王二,(目前是)CSDN 周排名前十的博客专家.这是<教妹学 Java>专栏的第二十六篇,今天我们来谈谈 Java 的 static 关键字--什么是静态变量?什么是静态方 ...

  7. 教妹学Java(二十一):一文带你了解面向对象编程的所有概念

    你好呀,我是沉默王二,是<Web 全栈开发进阶之路>的作者,CSDN 的博客之星.<教妹学 Java>是一套非常有趣的付费专栏,除了继续保持幽默风趣的行风风格,我还力求把每一个 ...

  8. 教妹学Java(十九):continue 关键字详解

    你好呀,我是沉默王二,是<Web 全栈开发进阶之路>的作者,CSDN 2019 年度的博客之星.<教妹学 Java>是一套非常有趣的付费专栏,除了继续保持幽默风趣的行风风格,我 ...

  9. 教妹学 Java:动态伴侣 Groovy

    点击上方"程序员小明",选择"星标" 今晚可以不加班! 00.故事的起源 "二哥,听说上一篇<多线程>被 CSDN 创始人蒋涛点赞了?&q ...

  10. 教妹学Java(六):JDK,JRE和JVM之间有什么区别?

    大家好,我是沉默王二.本篇文章通过我和三妹的对话来谈一谈"JDK,JRE 和 JVM 之间的区别".本文付费,为表谢意,附送上个人微信(qing_gee),坑位所剩无几,快加,你有 ...

最新文章

  1. 张新波 | 十面埋伏 - 论大数据风控技术体系的构建
  2. access 导入 txt sql语句_从零开始学习 MySQL 系列索引、视图、导入和导出
  3. Launchpad services provided in HANA XS in multitenant
  4. aboboo 上一句 快捷键_锁定微信防别人偷看,苹果电脑上的微信有何不同?
  5. 你真的不了解这个地球
  6. 用python画皇冠_手把手教你用 Python 绘制酷炫的桑基图!
  7. UpdatePanel 学习之 ChildrenAsTriggers
  8. java避免空指针异常
  9. CTA策略07_MultiTimeframeStrategy
  10. 《JavaScript高级程序设计(第3版)》阅读总结记录第一章之JavaScript简介
  11. Java实现在线打开word文档加盖印章/盖章/签名功能
  12. excellvba引用计算机用户名,EXCEL VBA 取当前登录 用户名的多种实现方法
  13. hdu 1869 六度分离(bfs)
  14. php Spreadsheet Csv,使用 PhpSpreadsheet 实现读取写入 Execl
  15. 带你打开C语言的大门
  16. 用苹果手机计算机程序二,两台iPhone怎么互传软件 苹果手机互传应用的3个小技巧...
  17. 沉浸式状态栏实现,完美适配Android刘海屏,终极兼容
  18. Redis 官方可视化工具,功能真的强大
  19. 商业级、工业级、军品级、宇航级CPU有着不同标准
  20. 广西大学oj1042(小西的数据结构作业)

热门文章

  1. ALIAS_TO_ENTITY_MAP 封装成对象
  2. 新研究发现:太平洋上仅存的冰川将很快融化
  3. Java高级之Git
  4. 用python的tkinter和爬虫制作一个天气查询窗口
  5. php微信狗,PHP 微信狗小程序 搜鱼CMS商业正版V3.1 一键生成小程序
  6. 如何在视频中的对象后面添加图像
  7. VB之比较三个数的大小
  8. 他在自己的荣光中如此孤独,孤独地连一个敌人都没有剩下。
  9. SpringDataJpa系列一之初识及入门案例搭建
  10. 全球及中国铟行业发展状况与投资前景建议报告2022-2028年