Java语言基础

Java是一种纯面向对象的语言,最大的特点是平台无关性。

平台无关性:同一个Java程序文件(.class文件)可以在不同的平台上运行,比如windows,Linux,MacOS。

重要术语:

  • JSE:Java Platform Standard Edition,Java平台标准版。可以理解为最基础的版本,对应的有JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。
  • JVM:Java Virtual Machine,Java虚拟机。
  • JRE: Java Runtime Environment,Java运行环境,包含JVM,需要安装才能运行Java程序文件(.class文件)。
  • JDK:Java Development Kit:Java开发工具包。提供包含了Java开发工具如编译工具(javac.exe)、打包工具(jar.exe)等,一般集成了JRE。

1. Java程序是如何运行的

first_java_program

  • 编译器(Compiler):将我们写的java程序文件翻译成01代码文件。
  • 解释器(Interpreter):告诉电脑如何执行01代码文件。

2. 一个简单的Java程序文件

以下是一个简单的Java程序文件,文件名:文件:Hello.java。

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

Hello.java程序文件的解释

  1. 文件的扩展名必须是.java
  2. 被花括号{ }包围的属于一个代码块,需要执行的代码必须放在代码块中(少量资源管理语句除外,如import,package),代码块里可以包含多个其他代码块,例如上面的例子中:Hello{}代码块里包含了main(){}代码块。
  3. public class Hello{ 类的代码块 }: 定义了一个叫Hello的类,其中

(1) public: 关键字,理解为“公共的”; (2) class: 关键字,理解为“类”; (3) 上述程序是说:定义一个公共,名字叫Hello

  1. public static void main(String[] args){ main方法的代码块 }:定义了一个叫main的方法(函数),其中

(1) public:公共方法; (2) static: 静态的,表明后面的main方法是一个静态方法; (3) (String[] args):方法后的圆括号指明方法的参数,args是arguments的缩写,是参数的名字,String[]是参数的类型; (4) void: 方法不返回任何东西; (5) 上述程序是说:定义一个公共的静态方法,叫main,这个方法需要一组String[]类别的参数,我们给参数起名叫args

  1. System.out.println("Hello world");在控制台打印“Hello world”。

Tips 方法和函数本质上是非常类似的,上述java程序的main(String[] args)方法和数学上的函数$g(x)$对比:$g$是函数的名字,圆括号用来指明函数的自变量,自变量的名字是$x$。只是在数学上我们多数时候默认处理实数,不用特地写明自变量的类型,而编程时要严格告诉电脑方法需要的参数类型以及方法的一些特性

Java编程规范

  • { }花括号指明代码块;
  • ( )圆括号里指明参数;
  • 如果类用public修饰,那么public类的名字必须和文件名相同;上面的例子中,类名为Hello,那么文件名需要是Hello.java 文件名和类名均不能存在空格
  • Java是大小写敏感的,大写字母A和小写字母a代表不同的东西;
  • 类的名字均以大写字母开头,如上面例子的Hello
  • 方法和参数的名字尽量以小写字母开头。