首页 > 编程笔记 > Java笔记

Java是什么,一文彻底搞清楚Java语言!

Java 是一门高级的面向对象的程序设计语言。使用 Java 语言编写的程序是跨平台的,可以在任何计算机、操作系统以及支持 Java 的硬件设备上运行,从计算机到智能手机,到处都运行着 Java 开发的程序和游戏。

什么是Java语言

Java 是 1995 年由 Sun 公司推出的一门极富创造力的面向对象的程序设计语言,它是由有“Java之父”之称的 Sun 研究院院士詹姆斯·戈士林博士亲手设计而成的,正是他完成了 Java 技术的原始编译器和虚拟机。

Java 最初的名字是 OAK,在 1995 年被重命名为 Java,并正式发布。

Java 是一种通过解释方式来执行的语言,其语法规则和 C++ 类似。同时,Java 也是一种跨平台的程序设计语言,用 Java 语言编写的程序,可以运行在任何平台和设备上,如跨越 IBM 个人计算机、MAC 苹果计算机、各种微处理器硬件平台,以及 Windows、UNIX、OS/2、Mac OS 等系统平台,真正实现“一次编写,到处运行”。Java 非常适于企业网络和 Internet 环境,并且已成为 Internet 中最具有影响力、最受欢迎的编程语言之一。

与目前常用的 C++ 相比,Java 语言简洁得多,而且提高了可靠性,除去了最大的程序错误根源,此外它还有较高的安全性,可以说,它是有史以来最为卓越的编程语言。

Java 语言编写的程序既是编译型的,又是解释型的。程序代码经过编译之后转换为一种称为 Java 字节码的中间语言,Java 虚拟机(JVM)将对字节码进行解释和运行。编译只进行一次,而解释在每次运行程序时都会进行。编译后的字节码采用一种针对 JVM 优化过的机器码形式进行保存,虚拟机将字节码解释为机器码,然后在计算机上运行。

Java 语言程序代码的编译和运行过程如下图所示。


图 1 Java程序的编译和运行过程

Java的版本

Java 主要分为两个版本:Java SE 和 Java EE。

Java SE 全称 Java platform standard edition,是 Java 的标准版,主要用于桌面应用程序开发。它包含了 Java 语言基础、JDBC(Java数据库连接)、I/O(输入/输出)、TCP/IP 网络、多线程等核心技术。

Java EE 全称 Java platform enterprise edition,是 Java 的企业版,主要用于开发服务器应用程序,如网站、服务器接口等,其核心为 EJB(企业Java组件)。Java EE 版本兼容 Java SE 版本。

Java语言的特性

Java 语言的作者们编写了具有广泛影响力的 Java 白皮书,里面详细介绍了他们的设计目标以及实现成果,还用简短的篇幅介绍了 Java 语言的特性。下面将对这些特性进行扼要的介绍。

1) 简单

Java 语言的语法简单明了,容易掌握,而且是一种纯面向对象的语言。Java 语言的简单性主要体现在以下几个方面:

2) 面向对象

面向对象是 Java 语言的基础,也是 Java 语言的重要特性,它本身就是一种纯面向对象的程序设计语言。

Java 语言提倡万物皆对象,语法中不能在类外面定义单独的数据和函数,也就是说,Java 语言最外部的数据类型是对象,所有的元素都要通过类和对象来访问。

3) 分布性

Java 的分布性包括操作分布和数据分布:

4) 可移植性

Java 程序具有与体系结构无关的特性,它可以非常方便地被移植到网络上的不同计算机中。

同时,Java 的类库也实现了针对不同平台的接口,使得这些类库也可以被移植。

5) 解释型

运行 Java 程序需要解释器。任何移植了 Java 解释器的计算机或其他设备都可以用 Java 字节码进行解释执行。字节码独立于平台,它本身携带了许多编译时的信息,使得连接过程更加简单,开发过程更加迅速,更具探索性。

6) 安全性

Java 语言取消了类 C 语言中的指针和内存释放等语法,有效地避免了用户对内存的非法操作。

Java 程序代码要经过代码校验、指针校验等很多测试步骤才能够运行,因此未经允许的 Java 程序不可能运行,也不可能出现损害系统平台的行为,而且使用 Java 可以编写出防病毒和防修改的系统。

7) 健壮性

Java 语言的设计目标之一,是能编写出多方面、可靠的应用程序。因此,Java 会检查程序在编译和运行时的错误,并消除错误。类型检查能帮助用户检查出许多在开发早期出现的错误,集成开发工具(如 Eclipse、NetBeans)的出现也使得编译和运行 Java 程序更加容易。

8) 多线程

Java 语言支持多线程机制,能够使应用程序在同一时间并行执行多项任务,而且相应的同步机制可以保证不同线程能够正确地共享数据。使用多线程,可以带来更好的交互能力和实时行为。

9) 高性能

Java 编译后的字节码是在解释器中运行的,所以它的速度较多数交互式应用程序提高了很多。另外,字节码可以在程序运行时被翻译成特定平台的机器指令,从而进一步提高运行速度。

10) 动态

Java 在很多方面比 C 和 C++ 更能够适应不断发展的环境,可以动态地调整库中方法和变量的增加,而客户端不需要任何更改。在 Java 中进行动态调整是非常简单和直接的。

Java的应用领域

借助 Java,程序开发人员可以自由地使用现有的硬件和软件系统平台。这是因为 Java 是独立于平台的。

Java 还可以应用于计算机之外的领域,Java 程序可以在便携式计算机、电视、电话、手机和其他的大量电子设备上运行。Java 的用途不胜枚举,它拥有无可比拟的能力,节省的时间和费用十分可观。

Java 的应用领域主要有以下方面:
Java 无处不在。它已经拥有几百万个用户,其发展速度要快于在它之前的任何一种计算机语言。Java 能够给企业和最终用户带来数不尽的好处。Oracle 公司董事长和首席执行官 Larru Ellison 说过:“Java 正在进入企业、家庭和学校。它正在像 Internet 本身一样,成为一种普遍存在的技术。”

如果仔细观察,会发现 Java 就在我们身边。我们经常使用的 Java 开发工具有 Eclipse、IntelliJ IDEA、NetBeans、JBuilder 等。

怎样学好Java?

如何学好 Java 语言,是所有初学者都需要面对的问题。其实,每种语言的学习方法都大同小异。初学者需要注意以下几点:
  1. 明确自己的学习目标和大的方向,选择并锁定一门语言,然后按照自己的方向努力学习,认真研究。
  2. 初学者不用看太多的书,先找本相对基础的书进行系统的学习。很多程序开发人员工作了很久也只是熟悉部分基础而已,并没有系统地学习 Java 语言。
  3. 了解设计模式。开发程序必须编写程序代码,这些代码必须具有高度的可读性,这样编写的程序才有调试、维护和升级的价值。学习一些设计模式,能够更好地把握项目的整体结构。
  4. 不要死记语法。在刚接触一门语言,特别是 Java 语言时,掌握好基本语法并大概了解一些功能即可。尽量借助开发工具(如 Eclipse 或 NetBeans)的代码辅助功能完成代码的录入,这样可以快速进入学习状态。
  5. 多实践,多思考,多请教。仅读懂教程中的内容和技术是不行的,必须动手编写程序代码,并运行程序、分析运行结构,从而对学习内容有个整体的认识和肯定。学会用自己的方式思考问题,通过编写代码来提高编程思想。平时多请教老师或同事,和其他人多沟通技术问题,提高自己的技术和见识。
  6. 不要急躁。遇到技术问题,必须冷静对待,不要让自己思维混乱。保持清醒的头脑才能分析和解决各种问题。可以尝试用听歌、散步等方式来放松自己。
  7. 遇到问题,首先尝试自己解决,这样可以提高自己的程序调试能力,并对常见问题有一定的了解,明白出错的原因,甚至能举一反三,解决其他关联的错误问题。
  8. 多查阅资料。可以经常到 Internet 上搜索相关资料或解决问题的方法,网络上已经摘录了很多人遇到的问题和不同的解决方法,分析这些问题的解决方法,找出最适合自己的方法。
  9. 多阅读别人的源代码。不但要看懂他人的程序代码,还要分析他人的编程思想和设计模式,并化为己用。

Java API文档

API 的全称是 application programming interface,即应用程序编程接口,主要包括类的继承结构、成员变量、成员方法、构造方法、静态成员的描述信息和详细说明等内容。读者可以在 https://docs.oracle.com/en/java/javase/19/docs/api/index.html 中找到 JDK 19 的 API 文档。

声明:《Java系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。