作者:禅与计算机程序设计艺术
1.简介
“编写第一个Java程序”是一个最基础、最重要、最常见的问题之一。本文将向您展示如何从头开始用Java编程,创建第一个Hello World程序。让我们一起从最简单的开始,逐步学习Java编程语言的语法和应用场景,完成这个小目标吧!
2.Java概述
Java(的字母由四个字母组成,其中J表示Java,ava表示“树”。它是一种静态类型、面向对象、分布式计算语言,可以简单地说,就是一种运行在JVM上的高级编程语言。它具有跨平台特性、自动内存管理、多线程支持等功能。 2.1 Java发展历史 Java是一门纯粹的面向对象的高级语言,为了与其他面向对象的语言区分开,曾被称为“Write Once, Run Anywhere”(一次编写,到处运行)的语言。 Java是由Sun公司在1995年推出并发布的,主要用于开发WEB应用程序、移动应用程序、嵌入式系统及企业级应用程序。随着互联网的蓬勃发展,Java语言越来越受欢迎。2009年8月3日,Oracle宣布将Java商标改为“Java Community Process”,这一变化标志着Java成为一个开放性标准社区,任何人都可以参与到开发中来。 Java语言在国际上也有很大的影响力,包括97%以上所用的浏览器、Android、NetBeans IDE、Spring Framework等。 2.2 Java开发环境配置 Java开发环境包括JDK和JRE两个组件。JDK(Java Development Kit)包括Javac编译器、Javadoc文档生成工具、Appletviewer实验组件、Java插件和其他开发工具;而JRE(Java Runtime Environment)则提供了Java运行时环境,包括Java虚拟机JVM和其他运行库。 如果您需要安装多个版本的JDK或JRE,建议安装OpenJDK。OpenJDK是OpenJDK项目的开放源代码版本,免费提供给所有人使用。官网下载地址:https://jdk.java.net/archive/。安装好之后,您可以在终端或命令行下输入javac -version和java -version命令查看是否安装成功。 JRE与JDK除了不同的大小和功能外,其余配置基本相同。JRE一般不需要安装,因为JRE已经包含在JDK里。只要安装好JDK,打开终端或命令行,输入java后即可进入Java交互模式。 3.第一个Java程序——Hello World 创建一个名为HelloWorld.java的文件,然后写入以下代码:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
首先,通过关键字public修饰类,接着声明了一个名为HelloWorld的类。然后,在类的内部定义了一个名为main的方法,该方法又接收一个字符串数组作为参数args。最后,通过System.out.println()语句输出了一个消息。注意:请不要忘记保存文件,否则程序将不能正常运行。 打开终端或命令行,切换到文件所在目录,输入javac HelloWorld.java命令,编译Java代码。如果没有错误提示,输入java HelloWorld命令,就可运行程序了。程序会输出Hello, world!这个信息。 至此,我们已完成第一个Java程序的编写。但是,仅仅做到了输出文本信息,实际工程中往往还会有更复杂的需求。接下来,我们继续学习Java的语法。
4.Java语法基础
4.1 Java标识符规则
标识符是变量、函数、类、接口、包的名称。按照惯例,命名规则如下:
命名只能使用英文字母、数字或者下划线。
首字符必须是字母或下划线。
名字长度不能超过64个字符。
驼峰命名法。即第一个单词的首字母小写,第二个单词的首字母大写。例如:myName、fullName、totalIncome等。
不推荐使用缩写。例如:HttpUrlConnection不推荐使用缩写为Huc。
4.2 Java注释
注释是程序中的临时的文字记录,对程序功能无直接影响,但对于维护人员和程序员来说十分重要。Java共有三种注释方式:
//注释:单行注释。// 后面紧跟注释内容。
/* / 注释:多行注释。/ 注释内容... */ 用来注释多行内容。
/** / 注释:javadoc注释。javadoc是一套完整的Java文档规范,它的作用是生成HTML格式的Javadoc文档。/* 注释内容... */ 可以用来生成javadoc。
4.3 数据类型
Java的八种基本数据类型分别是:byte、short、int、long、float、double、boolean和char。
byte:占8位二进制存储空间,取值范围为-128~127。
short:占16位二进制存储空间,取值范围为-32768~32767。
int:占32位二进制存储空间,取值范围为-2147483648~2147483647。
long:占64位二进制存储空间,取值范围为-9223372036854775808~9223372036854775807。
float:占32位浮点型,也就是四字节,存储小数部分。
double:占64位浮点型,也就是八字节,存储小数部分。
boolean:只有两个值true和false。
char:占16位存储空间,用来存放单个字符。
Java还提供了两种数据类型:引用数据类型(reference data type)和原始数据类型(primitive data type)。原始数据类型直接存储数据值,而引用数据类型存储的是数据值的内存地址。不同类型的变量之间不可进行相互赋值,除非进行类型转换或强制类型转换。
4.4 Java变量
Java变量是在程序执行过程中能够持续存在的数据单元。Java中的变量分为局部变量、实例变量和类变量。
局部变量:位于方法、构造方法或语句块内,生命周期仅限于当前代码块。比如:
int age = 20;
实例变量:位于类的成员变量,可以被所有方法共享,生命周期与对象一致。比如:
private String name;
类变量:类变量是指声明在类级别上的变量,这些变量在类第一次加载的时候就会初始化,并且这些变量在整个程序运行期间保持同样的值。比如:
public static final double PI = 3.14159;
通常情况下,我们习惯于将实例变量定义为私有的,将类变量定义为public的static final。
4.5 Java控制结构
Java有以下几种基本控制结构:
if-else:条件判断结构。
for循环:重复执行固定次数的代码块。
while循环:重复执行代码块,直到条件表达式为false。
do-while循环:也是重复执行代码块,直到条件表达式为false。区别在于do-while是先执行一次代码块,然后再判断条件。
switch-case:多分支条件选择结构。
4.6 Java运算符
Java支持以下几种运算符:
一元运算符:++x、--x、+x、-x、!x。
算术运算符:+、-、、/、%、*。
关系运算符:<、>、<=、>=、==、!=。
逻辑运算符:&&、||、!。
赋值运算符:=、+=、-=、=、/=、%=、*=、<<=、>>=、>>>=。
4.7 Java流程控制语句
Java流程控制语句用于改变程序的执行顺序,如:
break语句:终止当前循环。
continue语句:跳过当前循环,继续下次循环。
return语句:返回值。
4.8 Java异常处理机制
异常(Exception)是Java程序运行过程中的特殊现象,它代表某一事件发生时,JVM检测到这种情况,将异常抛给调用者。当调用者对异常进行相应的处理时,就可以继续运行程序。
Java异常处理机制是通过throws子句来声明可能发生的异常,try-catch语句来捕获异常并进行相应的处理。
4.9 Java I/O流
I/O(Input/Output)是指计算机对外部世界的输入输出,即数据的输入和输出。Java提供了一系列的I/O流用于处理各种类型的输入输出,如文件I/O、网络I/O、控制台I/O等。Java中常用的I/O流有:
文件I/O流:FileInputStream、FileOutputStream、FileReader、FileWriter。
打印流:PrintStream。
字节流:InputStream、OutputStream。
字符流:Reader、Writer。