Java 简介

Java 简介JAVA 由 Sun Microsystems Inc 于 1991 年开发,后来被 Oracle Corporation 收购。它由 James Gosling 和 Patrick Naughton 开发。它是一种简单的编程语言。在 java 中编写,编译和调试程序很容易。它有助于创建模块化程序和可重用代码。

Java 术语

在我们开始学习 Java 之前,让我们熟悉常见的 Java 术语。

Java 虚拟机(JVM)

这通常称为 JVM。之前,我们讨论 JVM 让我们看看程序执行的各个阶段。阶段如下:我们编写程序,然后编译程序,最后运行程序。

1)程序的编写当然是由像你我这样的 java 程序员完成的。

2)程序编译由 javac 编译器完成,javac 是 java 开发工具包(JDK)中包含的主 java 编译器。它将 java 程序作为输入并生成 java 字节码作为输出。

3)在第三阶段,JVM 执行编译器生成的字节码。这称为程序运行阶段。

所以,现在我们知道 JVM 的主要功能是执行编译器生成的字节码。 每个操作系统都有不同的 JVM,但是在执行字节码后它们产生的输出在所有操作系统中是相同的。这就是我们将 java 称为平台无关语言的原因。

字节码

如上所述,JDK 的javac编译器将 java 源代码编译成字节码,以便它可以由 JVM 执行。字节码由编译器保存在.class文件中。

Java 开发工具包(JDK)

在解释 JVM 和字节码时,我使用了术语 JDK。我们来讨论一下。顾名思义,这是完整的 Java 开发工具包,包括 JRE(Java 运行时环境),编译器和各种工具,如 JavaDoc,Java 调试器等。
为了创建,编译和运行 Java 程序,您需要在您的上安装 JDK 电脑。

Java 运行时环境(JRE)

JRE 是 JDK 的一部分,这意味着 JDK 包含 JRE。如果在系统上安装了 JRE,则可以运行 java 程序,但是无法编译它。 JRE 包括 JVM,浏览器插件和 applet 支持。当您只需要在计算机上运行 java 程序时,您只需要 JRE。

这些是在 java 中混淆​​初学者的基本 java 术语。有关完整的 java 词汇表,请参阅此链接:
https://docs.oracle.com/javase/tutorial/information/glossary.html

JAVA 的主要特点

Java 是一种独立于平台的语言

编译器(javac)将源代码(.java文件)转换为字节代码(.class文件)。如上所述,JVM 执行编译器生成的字节码。这个字节代码可以在任何平台上运行,例如 Windows,Linux,Mac OS 等。这意味着在 Windows 上编译的程序可以在 Linux 上运行,反之亦然。每个操作系统都有不同的 JVM,但是在执行字节码后它们产生的输出在所有操作系统中都是相同的。这就是我们将 java 称为平台无关语言的原因。

Java 是面向对象的语言

面向对象编程是一种将程序组织为对象集合的方法,每个对象都代表一个类的实例。

面向对象编程的 4 个主要概念是:

  1. 抽象
  2. 封装
  3. 继承
  4. 多态

简单

Java 被认为是一种简单的语言,因为它没有像运算符重载,多重继承,指针和显式内存分配这样的复杂功能。

健壮的语言

稳健意味着可靠。 Java 编程语言的开发方式非常强调早期检查可能的错误,这就是为什么 java 编译器能够检测其他编程语言中不易检测的错误的原因。使其健壮的 java 的主要特征是垃圾收集,异常处理和内存分配。

安全

我们没有指针,我们无法在 java 中访问超出绑定的数组(如果你试图这样做,你会得到ArrayIndexOutOfBoundsException)。这就是为什么在 Java 中无法利用堆栈损坏或缓冲区溢出等几个安全漏洞的原因。

Java 是分布式的

使用 java 编程语言我们可以创建分布式应用 RMI(远程方法调用)和 EJB(Enterprise Java Bean)用于在 java 中创建分布式应用。简单来说:java 程序可以分布在多个使用互联网连接的系统上。一个 JVM(java 虚拟机)上的对象可以在远程 JVM 上执行过程。

多线程

Java 支持多线程。多线程是一种 Java 功能,允许并发执行程序的两个或多个部分,以最大限度地利用 CPU。

便携

如上所述,在一台机器上编写的 java 代码可以在另一台机器上运行。平台无关的字节代码可以被携带到任何平台以便执行,从而使 java 代码可移植。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程