乐趣区

关于java:2Java介绍

Java 介绍

作者:韩茹

公司:程序咖(北京)科技有限公司

程序咖:IT 职业技能评测平台

网址:https://www.chengxuka.com

工作

1. 什么是 Java
2.Java 倒退历史
3.Java 语言的特点
4.Java 的利用场景
5.Java 平台体系
6.Java 的专业术语
7.Java 运行外围机制

一、什么是 Java

Java 是一种通用的,基于类的,面向对象的编程语言。它是用于利用程序开发的计算平台。因而,Java 是疾速,平安和牢靠的。它被宽泛用于在笔记本电脑,数据中心,游戏机,迷信超级计算机,手机等中开发 Java 应用程序。Java 遵循 WORA(Write Once, Run Anywhere。一次写入,到处运行)的原理,并且与平台无关。它也简略易学。

二、Java 倒退历史

Java 是世界上应用最宽泛的编程语言之一。Java 最后由 Sun Microsystems 在 1990 年代开发,用于开发从 Web 应用程序到挪动应用程序到批处理应用程序的所有内容。Java 最后是一种纯正的面向对象的语言,但当初曾经倒退成为一种多范例语言,能够高度适应任何状况。领有宏大的开发人员社区和反对库,Java 是开发简直所有类型的应用程序的现实抉择。

Java 是最后由开发 James Gosling(詹姆斯·高斯林,他被称为 Java 编程语言之父)在 Sun Microsystems 公司(现曾经被 Oracle 收买),并于 1995 年公布了作为 Sun 公司的一个外围组成部分 Java 平台。

James Gosling(詹姆斯·高斯林),Mike Sheridan(迈克·谢里丹)和 Patrick Naughton(帕特里克·诺顿)于 1991 年 6 月启动了 Java 语言我的项目。Java 最后是为交互式电视设计的,但在过后的数字有线电视行业来说太先进了。该语言最后是在 James Gosling(詹姆斯·高斯林)办公室外的一棵橡树之后被称为 Oak 的。起初,该我的项目以 Green 命名,并最终从 Java coffee(印度尼西亚的一种咖啡)重命名为Java

Java 的创始人:James Gosling(詹姆斯·高斯林)

<img src=”https://img.chengxuka.com/ruby0002/1192px-James_Gosling_2008.jpg/mark” style=”zoom:40%;” />

历史版本:

截至 2021 年 3 月,最新版本是 Java 16。从 2020 年 9 月开始,反对 Java 8 和 11 作为长期反对(LTS)版本,并且反对一个更高的非 LTS 版本。Java 的次要发行版本及其发行日期:

版本 日期
JDK 测试版 1995 年
JDK1.0 1996 年 1 月 23 日
JDK 1.1 1997 年 2 月 19 日
J2SE 1.2 1998 年 12 月 8 日
J2SE 1.3 2000 年 5 月 8 日
J2SE 1.4 2002 年 2 月 6 日
J2SE 5.0 2004 年 9 月 30 日
Java SE 6 2006 年 12 月 11 日
Java SE 7 2011 年 7 月 28 日
Java SE 8 2014 年 3 月 18 日
Java SE 9 2017 年 9 月 21 日
Java SE 10 2018 年 3 月 20 日
Java SE 11 2018 年 9 月 25 日
Java SE 12 2019 年 3 月 19 日
Java SE 13 2019 年 9 月 17 日
Java SE 14 2020 年 3 月 17 日
Java SE 15 2020 年 9 月 15 日
Java SE 16 2021 年 3 月 16 日

三、Java 语言的特点

  1. 一种面向对象的编程语言。

    依照对象汇合的形式组织程序是一种面向对象的编程思维。

    面向对象编程的四个次要概念是:抽象化,封装,继承,多态。

  2. 一种与平台无关的语言。(它提供了在不同平台下的解释运行环境)

    编译器将源代码转换为字节码,而后 JVM 执行编译器生成的字节码。该字节码能够在 Windows,Linux 和 macOS 的任何平台上运行,这意味着如果咱们在 Windows 上编译程序,则能够在 Linux 上运行,反之亦然。每个操作系统具备不同的 JVM,然而在字节码执行后,所有操作系统产生的输入都是雷同的。这就是为什么咱们称 Java 为平台无关的语言。

  3. 简略

    Java 是简略的语言之一,因为它不具备指针,运算符重载,多重继承,显式内存调配等简单性能。

  4. 一种强壮的语言,排汇了 C /C++ 语言的长处。

    Java 语言强壮,意味着牢靠。它以这样的形式开发:尽力尽早查看谬误,这就是 Java 编译器甚至可能检测到其余编程语言不易检测到的那些谬误的起因。使 Java 强壮的 Java 次要性能是垃圾收集,异样解决和内存调配。

  5. 具备较高的安全性。(主动回收垃圾,强制类型查看,勾销指针)

    在 Java 中,咱们没有指针,因而咱们无法访问越界数组,如果尝试这样做,它将显示 ArrayIndexOutOfBoundsException。这就是为什么在 Java 中无奈利用堆栈毁坏或缓冲区溢出之类的一些安全漏洞的起因。

  6. 分布式

    咱们能够应用 Java 编程语言创立分布式应用程序。近程办法调用和企业 Java Bean 用于在 Java 中创立分布式应用程序。Java 程序能够轻松地散布在通过 Internet 连贯相互连接的一个或多个零碎上。

  7. 多线程

    Java 反对多线程。它是 Java 的一项性能,它容许并发执行程序的两个或更多局部,以最大水平地利用 CPU。

  8. 可移植

    家喻户晓,在一台机器上编写的 Java 代码能够在另一台机器上运行。Java 的平台无关性能,其中能够将其平台无关字节码带到任何平台上执行,从而使 Java 可移植。

  9. 开源

四、Java 的利用场景

  1. 桌面 GUI 应用程序

    桌面应用程序能够应用 Java 轻松开发。咱们应用 AWT,Swing,JavaFX 等 API 来构建这些应用程序。

  2. 挪动利用

    挪动应用程序是为手机和平板电脑创立的应用程序。在当今时代,大多数电话和智能设施都具备 Android 操作系统,没有 Java 就不可能进行 Android 开发。Java Micro Edition(Java ME 或 J2ME)是一种风行的跨平台框架,用于构建可在所有性能手机和智能手机上运行的应用程序。

  3. 企业应用

    企业应用程序是一个大型软件系统,能够在公司环境中运行,以满足组织而不是单个用户的需要。

  4. 迷信利用

    迷信应用程序是一种应用数学影响理论流动的应用程序。Java 因为其弱小的性能而反对迷信应用程序的开发。

  5. Web 利用

    Web 应用程序是通过浏览器界面在 Internet 上交付的客户端 - 服务器程序。

  6. 嵌入式零碎

    一个嵌入式零碎,也被称为集成系统,是组装在一起以执行专用性能的更大的零碎的许多小的计算单元的组合。嵌入式零碎随处可见。例如,电机零碎,汽车中的娱乐和多媒体,电子商务,无线通信,挪动计算和联网都应用嵌入式零碎。

    嵌入式零碎应用 Java 进行开发。最后,Java 是为开发嵌入式零碎而设计的。

  7. 大数据技术

    大数据一词定义为“能够剖析以提取模式,趋势和有用信息的极大型和简单数据集。它是最新技术畛域中最受欢迎的主题之一。Java 是大数据的视角。现在,许多开发人员正在将职业转向大数据技术。

  8. 分布式应用

    分布式应用程序是在网络内的多台计算机上执行或运行的应用程序或软件。分布式应用程序或零碎具备许多独特的要求,尤其是因为它们在其上运行的平台的分布式和动静个性而产生。Java 提供了实现这些应用程序的选项。

  9. 基于云的利用

    云计算意味着通过 Internet 按需交付 IT 资源,包含具备按需付费定价模式的存储,服务器,数据库,网络和软件。它能够低成本为 IT 基础架构提供解决方案,因为咱们能够将文件保留在近程数据库中并按需检索它们。长期以来,Java 始终是为 Web 应用程序提供构造的编程语言,因为它的分布式个性,当初它曾经进入了云应用程序。

  10. 奋斗奋斗

    Web 服务器是一种计算机程序,它应用 HTTP(超文本传输协定)和其余协定来存储,解决和响应通过 WWW(万维网)收回的客户端申请。Web 服务器是运行网站并向用户交付网页的零碎。Java 生态系统蕴含多个 Java Web 服务器和应用程序服务器。Java 提供了 Web 服务器,包含 Apache Tomcat,Simple,Jo!,Rimfaxe Web 服务器(RWS)Apache HTTP 服务器,Resin,Adobe JRun 和 Project Jigsaw。

  11. 软件工具

    软件工具是开发人员用来开发,剖析,保护,调试或反对其余应用程序和程序的一组计算机程序。许多开发人员应用 Java 编写和开发有用的软件工具。比方 Eclipse,IntelliJ Idea 和 NetBeans IDE。

  12. 游戏利用

    Java 被证实是开发二维游戏的最佳平台之一。现在,简直每个人都领有装有 Android 游戏的 Android 手机。没有 Java,就无奈构建 Android 游戏。

咱们晓得 Java 是一种“蓝领”语言,波及软件开发的各个领域。能够依据业务须要应用。通过这些应用程序,咱们意识到事实中对 Java 的需要。当咱们须要开发平安且可扩大的应用程序时,咱们相对应该抉择应用 Java,因为 Java 具备次要的平安性能。这就是为什么最好用 Java 开发许多须要很多平安问题的银行应用程序的起因。因而,如果咱们的业务规格与其性能相匹配,咱们能够抉择该语言。许多技术和编程语言都在倒退,然而 Java 的遍及水平依然是其余语言无法比拟的。

五、Java 平台体系

  1. Java SE(Java Platform Standard Edition)。Java SE 以前称为 J2SE。它容许开发和部署在桌面、服务器、嵌入式环境和实时环境中应用的 Java 应用程序。
  2. Java EE(Java Platform Enterprise Edition)。这个版本以前称为 J2EE。
    开发企业级的利用
  3. Java ME(Java Platform Micro Edition)。这个版本以前称为 J2ME。Java ME 为在挪动设施和嵌入式设施(比方手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个强壮且灵便的环境.

六、Java 的专业术语

首先理解两个计算机术语:

1. 计算机程序:

为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的汇合

编写程序的工具就是计算机语言,Java 就是多种语言中的一种

2. 软件:

软件是计算机程序、程序所用的数据以及无关文档资料的汇合。

在学习 Java 之前,必须相熟这些 Java 通用术语。

1. Java 虚拟机(JVM:Java Virtual Machine): 通常称为 JVM。程序分为三个执行阶段。他们被编写,编译并运行程序。

  • 像你和我这样的 Java 程序员都能够编写程序。
  • 编译由 JAVAC 编译器实现,JAVAC编译器是 Java 开发工具包(JDK)中蕴含的次要 Java 编译器。它以 Java 程序作为输出,并生成字节码作为输入。
  • 在程序的运行 阶段,JVM执行编译器生成的字节码。

当初,咱们理解到 Java 虚拟机的性能是执行编译器产生的字节码。每个操作系统都有不同的 JVM,然而在执行字节码后它们在所有操作系统上产生的输入都是雷同的。这就是为什么 Java 被称为 独立 平台的语言的起因。

2. 开发过程中的字节码 :JDK 的 Javac 编译器将 Java 源代码编译为字节码,以便能够由 JVM 执行。编译器将其另存为.class 文件。要查看字节码,能够应用像 javap 这样的反汇编程序。

3. Java 开发工具包(JDK):当咱们应用术语 JDK 时,当咱们理解字节码和 JVM 时。因而,顾名思义,它是一个残缺的 Java 开发工具包,其中包含编译器,Java 运行时环境(JRE),Java 调试器,Java 文档等所有内容。要在 Java 中执行该程序,咱们须要在咱们的计算机上安装 JDK 为了创立,编译和运行 Java 程序而在计算机上运行。

4. Java 运行时环境(JRE): JDK 包含 JRE。在咱们的计算机上安装 JRE 能够运行 Java 程序,然而,咱们无奈对其进行编译。JRE 包含浏览器,JVM,小程序反对和插件。为了运行 Java 程序,计算机须要 JRE。

5. 垃圾收集器:在 Java 中,程序员无奈删除对象。要删除或从新收集该内存,JVM 领有一个名为 Garbage Collector 的程序,简称 GC。垃圾收集器能够从新收集未援用的对象。因而,Java 通过解决内存治理使程序员的工作变得轻松。然而,程序员是否应该应用本人的代码,无论他们应用的对象曾经应用了很长时间了。因为垃圾无奈复原被援用对象的内存。

6. CLASSPATH 中 的类门路是文件门路 ava 运行时和 Java 编译器找 的.class文件加载。默认状况下,JDK 提供了许多库。如果要包含内部库,则应将它们增加到类门路中。

七、Java 运行外围机制

刚刚提到了 Java 程序执行的三个阶段,咱们再来具体的说一下:

计算机的高级编程语言类型:

  • 编译型 C /C++/Pascal//Golang 等,会生成二进制文件。比方:.exe 文件。
  • 解释型 Basic/Python/JavaScript / Perl /Shell 不会生成二进制文件

而 Java 语言是两种类型的联合;先编译, 再解释执行

Java 虚拟机(Java Virtual Machine) JVM

1 JVM 能够了解成一个可运行 Java 字节码的虚构计算机系统。它有一个解释器组件,能够实现 Java 字节码和计算机操作系统之间的通信
对于不同的运行平台,有不同 的 JVM。2 JVM 屏蔽了底层运行平台的差异,实现了“一次编译,随处运行”。

所以 Java 语言是跨平台的。

JVM 能够了解成一个可运行 Java 字节码的虚构计算机系统。

  • 它有一个解释器组件,能够实现 Java 字节码和计算机操作系统之间的通信
  • 对于不同的运行平台,有不同 的 JVM。

JVM 屏蔽了底层运行平台的差异,实现了“一次编译,随处运行”。

退出移动版