Java 简介
JAVA 于 1991 年由 Sun Microsystems Inc 的 James Gosling 开发,后来被 Oracle Corporation 收购。 它是一种简单的编程语言。 Java 使编写、编译和调试程序变得容易。 它有助于创建可重用的代码和模块化程序。
Java 是一种基于类、面向对象的编程语言,它的目的就是尽可能减少代码之间的依赖。 Java是一种通用编程语言,开发人员编写一次即可在任何地方运行,编译后的 Java 代码可以在所有支持 Java 的平台上运行。 Java 应用程序被编译为可以在任何 Java 虚拟机上运行的字节码。 Java 的语法类似于 c/c++。
历史
Java 的历史非常有趣。 它创建于 1991 年。它是是 Sun 工程师团队(称为 Green 团队)的James Gosling、Mike Sheridan 和 Patrick Naughton 于 1991 年发起。Sun Microsystems 于 1996 年发布了它的第一个公开版本,即 Java 1.0。 它在流行的平台上提供免费的运行。 Java1.0 编译器由 Arthur Van Hoff 用 Java 重新编写,并严格遵守其规范。 随着 Java 2 的到来,新版本为不同类型的平台构建了多种配置。
1997 年,Sun Microsystems 与 ISO 标准机构接洽,后来将 Java 正式化,但很快就退出了。 曾几何时,Sun 免费提供大部分 Java 实现,尽管它们是专有软件。 Sun 通过销售 Java Enterprise System 等专用产品的许可证从 Java 中获得收入。
2006 年 11 月 13 日,Sun 发布了大部分 Java 虚拟机作为免费的开源软件。 2007 年 5 月 8 日,Sun 完成了这个过程,在开源分发条款下提供了其所有 JVM 的核心代码。
Java的创建原则是简单、健壮、安全、高性能、可移植、多线程、解释型、动态等。James Gosling于1995年开发了Java,被称为Java之父。 目前,Java 用于移动设备、互联网编程、游戏、电子商务等。应用场景非常广泛。
为什么被命名为 JAVA?
在OAK这个名字之后,团队决定给它一个新名字,建议的词是Silk,Jolt,revolutionary,DNA,dynamic等。这些名字都很容易拼写也很有趣,但他们都想要这个名字能体现科技的精髓。 根据 James Gosling 的说法,Java 与 Silk 一起名列前茅,而且由于 Java 是一个独特的名称,因此他们中的大多数人都喜欢它。
Java(爪哇)是印度尼西亚的一个岛屿的名称,在那里生产了第一批咖啡(名为 Java 咖啡)。 这个名字是詹姆斯高斯林在他办公室附近喝咖啡时选择的。 请注意,Java 只是一个名称,而不是首字母缩略词。
Java 术语
在学习Java之前,必须熟悉Java的这些常用术语。
1. Java虚拟机(JVM) :通常被称为JVM。一个程序有三个执行阶段,编写、编译和运行程序。
- 编写程序是由像你我这样的 Java 程序员完成的。
- 编译由 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 Runtime Environment (JRE) :JDK 包含 JRE。我们电脑上安装JRE可以运行java程序,但是我们不能编译它。 JRE 包括浏览器、JVM、小程序支持和插件。为了运行java程序,计算机需要JRE。
5.垃圾收集器(Garbage Collector) :在Java中,程序员不能删除对象。为了删除或重新收集内存,JVM 有一个名为 Garbage Collector 的程序。垃圾收集器可以回收未被引用的对象。因此,Java 通过处理内存管理使程序员的生活变得轻松。但是,程序员应该小心他们的代码是否使用了已经使用了很长时间的对象。因为垃圾收集器无法恢复被引用对象的内存。
6. ClassPath :ClassPath 是java运行时和Java编译器寻找要加载的 .class
文件的路径。默认情况下,JDK 提供了许多库。如果要包含外部库,则应将它们添加到 ClassPath 中。
示例
下面我们看一个Java的示例
import java.io.*; // 主类 public class GFG { public static void main(String[] args) { System.out.println("Welcome to 迹忆客 - jiyik.com"); // 打印字符串 } }
上面示例运行结果如下
Welcome to 迹忆客 - jiyik.com
代码解释
1. 注释 :注释用于解释代码,在 Java 、 C 或 C++ 中以类似的方式使用。 编译器忽略注释内容,不执行它们。 注释可以是单行或多行。
单行注释
// 单行注释
多行注释
/* 多行注释*/
2. import java.io.* :表示io包的所有类都可以导入。 Java io 包提供了一组输入和输出流,用于将数据读取和写入文件或其他输入或输出源。
3. class :class 包含程序中要使用的数据和方法。方法定义类的行为。类GFG在JAVA中只有一个方法Main。
4. static void Main() :static 关键字告诉我们这个方法不需要实例化就可以访问。
5. void :void 关键字表明这个方法不会返回任何东西。 main() 方法是我们应用程序的入口点。
6. System.in :这是用于从键盘或任何其他标准输入设备读取字符的标准输入流。
7. System.out :这是标准输出流,用于在计算机屏幕等输出设备上生成程序结果。
8. println() :这个方法在Java中也用于在控制台上显示文本。它在控制台上打印文本,光标移动到控制台下一行的开头。下一次打印从下一行开始。