计算机java是什么意思(java零基础自学)

现在的市面上的Java教学,枯噪无味到令人从入门到放弃,所以为了激活大家对Java的积极性,开启这有趣的栏目,有趣的文章,让大家更快地掌握和认识Java这门编程语言.

认真的分割线

01、什么是Java?

Java 是一门计算机编程语言,高级、健壮、面向对象,并且非常安全。它由 Sun 公司在 1995 年开发,主力开发叫 James Gosling,被称为 Java 之父,就是下图这位,头秃的厉害。

计算机java是什么意思(java零基础自学)

(别问我头发秃不秃,正在用生发水。。。)

在这之前,Java其实叫 Oak(橡树的意思,我感觉好像比 Java 好听一些)。怎么想到呢?上面的老头坐在办公室,望向窗外,视野里出现了一颗橡树。不过,遗憾的是,Oak 已经被另外一家公司注册了,因此 1995 年 5 月 23 日,Oak 语言改名为 Java。

Java 起初并不是老头的首选,也不是命名团队的首选。团队其他人员更青睐 Silk(丝绸),但 Gosling 不喜欢,他本人喜欢的是 Lyric(抒情诗),但没通过律师这一关。最后,排在第四位的“Java”脱颖而出。是不是像极了婴儿没生下来之前,家人就着急着起名的那种感觉。

James Gosling 回忆说,“Java”是一个叫 Mark Opperman 的人提议的,他是在一家咖啡店得到灵感的,“Java”是印度尼西亚爪哇岛的英文名,因生产咖啡而闻名。

02、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 就实现了可移植性。

3)安全性

Java 适用于网络/分布式环境,为了达到这个目标,在安全方面投入了巨大的精力。使用 Java 可以构建防病毒、防篡改的程序。

从一开始,Java 就设计了很多可以防范攻击的机制,比如说:

运行时堆栈溢出,这是蠕虫病毒常用的攻击手段。

字节码验证,可以确保代码符合 JVM 规范并防止恶意代码破坏运行时环境。

安全的类加载,可以防止不受信任的代码干扰 Java 程序的运行。

全面的 API 支持广泛的加密服务,包括数字签名、消息摘要、(对称、非对称)密码、密钥生成器。

安全通信,支持 HTTPS、SSL,保护传输的数据完整性和隐私性。

4)并发性

Java 在多线程方面做得非常突出,只要操作系统支持,Java 中的线程就可以利用多个处理器,带来了更好的交互响应和实时行为。

大数据领域:

与 Python 一样,Java 在大数据领域占据着主导地位,很多用于处理大规模数据的框架都是基于 Java 开发的.

Apache Hadoop,用于在分布式环境中处理大规模数据集。Hadoop 采用了主副架构模式,其中主节点负责控制整个分布式计算栈。Hadoop 在需要处理和分析大规模数据的公司当中很流行。

Apache Spark,大型的 ETL(数据仓库技术)、预测分析和报表程序经常使用到 Spark。

Apache Mahout,用于机器学习,比如分类、聚类和推荐。

JFreechart,用于可视化数据,可以用它制作各种图表,比如饼图、柱状图、线图、散点图、盒状图、直方图等等。

Deeplearning4j,用于构建各种类型的神经网络,可以与 Spark 集成,运行在 GPU(图形处理器)上。

Apache Storm,用于处理实时数据流,一个 Storm 节点可以在秒级处理数百万个作业。

物联网(IoT)领域:

Oracle 表示,灵活性和流行度是 IoT 程序员选择 Java 的主要原因。Java 提供了大量的 API 库,可以很容易应用到嵌入式应用程序中。相比其他编程语言,比如 C 语言,Java 在切换平台时更加顺畅,不容易出错。

金融服务领域:

聊天机器人,由于可移植性、可维护性、可视化等诸多方面的因素,Java 成了开发聊天机器人最好的工具。

欺诈检测和管理,银行和金融公司使用 AI(人工智能)工具来进行金融欺诈和信用卡欺诈检测,而 Java 常用来开发这些 AI 工具。

交易系统,Java 虚拟机提供的动态运行时编译优化在很多情况下比编译型语言(如 C )具有更好的性能,让交易系统运行得更顺畅。

移动钱包,基于 AI 和 Java 算法开发的移动钱包,可以帮助用户在花钱时做出更智能的决策。

Web 领域:

Java 技术对 Web 领域的发展注入了强大的动力,主流的 Java Web 开发框架有很多:

Spring 框架,一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架,渗透了 Java EE 技术的方方面面,绝大部分 Java 应用都可以从 Spring 框架中受益。

Spring MVC 框架,是一种基于 Java 实现的 MVC(Model-View-Controller)设计模式的请求驱动类型的轻量级 Web 框架。

MyBatis 框架,一个优秀的数据持久层框架,可在实体类和 SQL 语句之间建立映射关系,是一种半自动化的 ORM(Object Relational Mapping,对象关系映射)实现。

JavaServer Faces 框架,由 Oracle 开发,能够将表示层与应用程序代码轻松连接,它提供了一个 API 集,用于表示和管理 UI 组件。

总之,Oracle 宣称,Java 正运行在 97% 的企业计算机上——有点厉害的样子。

03、Java的示例

publicclassHelloWorld{ publicstaticvoidmain(String[]args){ System.out.println(“HelloWorld”); } }

有很多同学看到这段程序之后,可能会一脸懵逼,也有可能很多同学会说,这么多个英文单词,我一个也不会写,也看不懂,该怎么办。

我在这里和大家说,所有的编程语言和英文都没有必然联系,(当然学点英文也是一个优势),只是编程语言是由老外发明的,所以才是英文,而且这些英文单词大部分都是固定的,我们写多了几遍程序之后,我们自然而然的就熟悉啦。

回到主题,这一串串的,也太复杂了。

先不要着急,这段代码之后我们会用洋葱大法拆解这段代码,很多代码基本上都是固定好的,所以不难理解。现在我就是让它给大家打个招呼。

04、Java为什么一直都这么火

它从2007年起热度就有增无减,无论是游戏,大中小网站,还是B2C商城,各大信息系统,到处都是JAVA的身影,各大招聘网站的JAVA工程师的招聘信息也是目不暇接,待遇也非常可观。

但是你说性能,java弱于C,说编码简单度,java不如python,可为啥java能稳坐编程语言宝座这么多年?首先我们从学习者角度出发,学习java,我们拥有丰富的资源,用人单位聘用java人数也最多,而且java具备丰富的生态系统,几乎每个功能点,都有相应的解决方案,不需要自己费心费力去创造。再从公司角度出发,java稳定,安全可靠,而且采用JIT技术后性能与C比也弱不了多少,而且java的项目结构,更适合团队协作,以及后期扩展。

由此,综合考量,java更加适合想要从事编程的人来学习,也适合公司进行项目开发管理,所以java必须火。

05、学习Java有没有“钱”途

Java不仅仅是一门编程语言,它还是一个由一系列计算机软件和规范组成的技术体系,这个技术体系提供了完整的用于软件开发和跨平台部署的支持环境,并广泛应用各种类型的场合,大部分你用的,看的,玩的东西都是由Java开发

1)桌面应用程序;

2)Web 应用程序;

3)企业应用程序,体现了 Java 的安全性、负载均衡和集群的优势;

4)移动端应用程序,主要就是安卓;

5)嵌入式系统;

6)机器人技术;

7)游戏。

时至今日,Java 技术体系已经吸引了 600 多万软件开发者,是全球最大的软件开发团队。Java 能够获得如此广泛的认可,除了它是一门结构严谨、面向对象的编程语言之外,还有很多其他不可忽视的优点:

l 摆脱了硬件平台的束缚,实现了“一次编写,处处运行”的理念;

l 内存管理相对安全,避免了绝大部分内存泄露和指针越界的问题;

l 实现了热点代码检测和运行时编译,使得 Java 应用能随着运行时间的增长而获得更高的性能;

l 有一套完善的应用程序接口,还有无数来自商业机构和开源社区的第三方类库。

这一切的一切,都让软件开发的效率大大的提高。所以,学习 Java 还是很有“钱”“秃”的。

06、感谢

我精心挑选了Java小白必备的电子书和详细的学习线路图,以及小白到大牛的文档说明。

每天“游戏式”地学习30分钟能带你轻松掌握“难搞的”Java

发表评论

登录后才能评论