初识Java编程语言

Java是最具有代表性的高级程序设计语言之一。本文带你初识Java语言

Java语言简介

Java是一种编程语言,它包含一系列的工具:编辑器、解释器、文档生成器等,Jre中包括了一个完整的Java类集合。Java语言拥有自己的应用程序运行环境,Java应用程序是独立的程序,不需要浏览器就可以运行,还可以一键部署环境,包含JRE(Java Runtime Environment)和web浏览器。

Java语言各版本与用途

  • Java SE(标准版):包含那些构成Java语言核心的类。适合开发桌面应用程序和底层应用程序,同时也是Java EE的基础平台。
  • Java EE(企业版):Java EE包含Java SE中的类,并且还包含用于开发企业级应用的类,简化复杂的企业级编程。
  • Java ME(微缩版):包含Java SE中的一部分类,用于嵌入式系统开发,专门针对于一些小型消费电子产品,如:手机,PDA,机顶盒。

Java语言的特点

  1. 跨平台:只要有Java运行环境(JVM)的机器都能执行Java程序
  2. 半编译半解释:源程序先编译成字节码,JVM能直接对Java字节码进行解释执行

    Java的编译和解释执行的过程

  3. 简单:无需强大的硬件环境便可以很好的运行,提供了丰富的类库,方便用户迅速掌握Java
  4. 面向对象:Java最基本的特性,Java语言的设计完全是面向对象的。
  5. 分布式:Java包括一个支持HTTP和FTP等基于TCP/IP协议的子库。Java应用程序可凭借URL打开并访问网络上的对象。
  6. 健壮:自动垃圾收集机制
  7. 安全:避免了非法内存操作
  8. 多线程:Java提供的多线程功能能使得在一个程序里可同时执行多个小任务

Java开发环境JDK

Java运行环境就是JRE(Java Runtime Environment),它可以让计算机系统执行Java应用程序,它是运行Java程序所必须的环境的集合,JRE内部包含一个Java虚拟机JVM(Java Virtual Machine)及一些标准的类库(Class Library),仅运行Java程序时可以仅安装JRE,若要自行开发Java软件,需要安装JDK,JDK中附带着JRE。

最新版本的下载地址 https://www.oracle.com/technetwork/java/javase/downloads/jdk13-downloads-5672538.html

注:JDK下载的需要接受许可协议

 

应用Java开发环境也需要设置系统环境变量,系统环境变量就是在操作系统中定义的变量,可以供操作系统上所有程序使用。我们需要配置path变量,也可以自行选择是否配置classpath变量。

如果执行的可执行文件不在当前目录下,那么会依次搜索path中设置的路径。classpath是指定你在程序中所使用的的类(.class)文件所在的位置,

Java开发环境配置

JDK是有助于开发者开发Java程序的Java开发工具包,常用工具包括:

  1. javac.exe:用于编译,将Java源代码(.java)文件编译为字节码(.class)文件。
  2. java.exe:用于执行,执行Java字节码(.class)文件。
  3. javadoc:用于生成文档,将注释提取成HTML格式文档
  4. jdb:用于调试,逐行执行代码,设置断点、检查变量、调试程序与查找错误

第一个Java程序

Java程序可以分为Java应用程序(Java Application)和Java小程序(Applet)两种。

package com.helloworld.po;

public class helloworld {
    public static void main(String args[]){
        System.out.println("Hello World!");
    }
}

在上面的程序中,定义了一个类helloworld,在该类中定义了一个main方法,对于一个Java应用程序来说,main方法是必需的,必需要按照如上的格式来定义,Java编写、编译和执行过程如下。

类和主方法

Java程序运行原理

Java程序运行在java虚拟机上,java虚拟机也就是JVM,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还拥有相应的指令系统。JVM虚拟机可以在不同的设备上运行,如windows系统、Linux系统上等。

Java虚拟机的主要任务是装载Class文件并解释执行其中的字节码,执行一个java程序时,一个JVM虚拟机实例就产生了,当程序关闭时,实例也随之消失。若一台计算机上同时运行三个以上的Java程序,将得到三个以上的Java虚拟机实例,每个Java程序都运行于它各自的Java虚拟机中。

JVM实例示意图

JVM也有生命周期,JVM实例通过调用某个初始类的main()方法来运行一个java程序。而中国main()方法必须是公有的(public)、静态的(static)、返回值为void,并且接受一个字符串组作为参数。main()方法的类都作为Java程序运行的起点,任何其他线程都是由这个初始线程启动的。

JVM运行原理

编译源文件:Java源代码被Java编译器编译(Compile)。产生错误称为编译错误,没有错误则生成字节码(Byte code)。

运行字节码:Java字节码被装载到Java虚拟机中,解释成本地代码再运行。产生错误则称为运行错误(Runtime)。

运行时过程