Java 程序设计基础
要想编写规范、可读性高的 Java 程序,就必须熟练掌握 Java 基本语法。基本语法是所有编程语言都必须掌握的基础知识,也是整个程序代码不可缺少的重要部分。随后的章节开始学习 Java 的基础语法部分,主要分为 4 部分内容:数据类型,变(常)量,运算符,以及控制流程语句,这也是构成 Java 程序最基础的 4 个部分,敲黑板!
其中,数据类型和运算符不仅定义了语言的规范,还决定了可以执行什么样的操作;变量是用来存储指定类型的数据;而控制流程根据用户的输入决定程序要进入什么流程,即要做什么?如何做?
在开始正式的学习之前,我们需要先了解一些 Java 基本语法最最基本的定义:
Java 标识符 & 关键字
任何一种计算机语言都离不开标识符和关键字,本小节将详细介绍 Java 的标识符、关键字(保留字)。
标识符
所有编程语言中的 标识符,都是为 变量、方法、类、对象以及文件、工程 等进行命名的,可以有一个或多个字符。
标识符构成规则
Java 语言规定的,标识符的构成规则如下:
- 标识符可以由任意多的 字母(A
Z 和 az),数字(0~9),下划线(_),dollar 符($),Unicode 字符集中符号(大于 0xC0 )的所有符号组合构成。注意不包含空格!!! - 必须以字母,dollar 符以及下划线开头,不可以是数字。
- 运算符,关键字(保留字)以及标准方法名不可以作为标识符。
注意:标识符中可以包含 关键字 & 标准方法名。
标识符命名规范
一个良好的编程习惯要求命名标识符时,应赋予它 ”意义“(非强制)。
- 见名知义:代码命名神奇 –> CodeIF;
- 包名全部小写;
- 类名各单词首字母大写(大驼峰命名法)
- 变量名,方法,类的实例:第一个单词字母小写,其它单词首字母大写(小驼峰命名法);
- 常量名全部大写;
- 参数的名尽量使用一个单词的情况下,命名明确;
- 数组命名使用:”类型[] 数组名” 的形式。
驼峰命名法:
小驼峰式(little camel-case)–> 第一个单词首字母小写,后面其他单词首字母大写。
大驼峰式(big camel-case)–> 每个单词的第一个字母都大写;
关键字
关键字(或者保留字)是语言中已经被赋予了特殊含义的专有单词,Java 编译器有特殊的意义,不能在程序中做其他目的使用。
保留字是为 Java 预留的关键字,它们虽然现在没有作为关键字,但在以后的升级版本中有可能作为关键字。
Java 语言目前定义了 51 个关键字,这些关键字不能作为标识符使用:
- 数据类型:boolean、int、long、short、byte、float、double、char、class、interface。
- 流程控制:if、else、do、while、for、switch、case、default、break、continue、return、try、catch、finally。
- 修饰符:public、protected、private、final、void、static、strict、abstract、transient、synchronized、volatile、native。
- 动作:package、import、throw、throws、extends、implements、this、supper、instanceof、new。
- 保留字:true、false、null、goto、const。
Java 注释
注释不是编程语句,编译时会被编译器忽略。
Java 支持以下三种注释方式:
单行注释
以双斜杠 “//” 标识,只能注释一行内容:
1 | public class HelloJava { |
多行注释
包含在 “/*” 和 “*/” 之间,能注释很多行的内容,也成为 块注释。
为了可读性(美观)比较好,一般首行和尾行不写注释信息:
1 | public class HelloJava { |
注意:多行注释可以嵌套单行注释,但是不能嵌套多行注释和文档注释。
文档注释
包含在 “/**” 和 “*/” 之间,也能注释多行内容,只在类、接口、方法、成员变量上面,用来描述其作用。
注释后,鼠标放在类和方法上面会自动显示出我们注释的内容
1 | /** |
注意:文档注释能嵌套单行注释,但是不能嵌套多行注释和文档注释
Java 平台提供了 javadoc 工具,使用 Java 源代码中的文档注释,来生成 API 说明文档。
语句
Java 程序中,语句是最小的组成单位,每个语句必须使用分号作为结束符。
除此之外,Java 对语句无任何其他限制,开发人员可以很随意地用符合自己风格的方式编写语句。
1 –> 一个语句放在多行
1 | String str = "Apple " |
由于 Java 使用分号作为语句的结束符,所以上面的 3 行代码会被 Java 认为是一条语句,因为这 3 行中只有一个分号。但是,我们不推荐使用这种方式来编写语句(不符合编码规范)。
2 –> 多个语句放在一行
使用分号作为分隔符,将多个语句放在一行来编写也是允许的:
1 | int a=0,b,c;b=a+10;b++;c=a*b;System.out.println(c); |
但也不这样推荐。
3 –> 空语句
所谓空语句(Empty Statement),它在程序中什么都不做,也不包含具有实际性的语句。
空语句的语法格式如下:
1 | ; // 其实就是一个分号 |
表达式
表达式是由变量、操作符以及方法调用所构成的结构。在表达式后面添加分号,就成了独立的表达式语句。
样例:
1 | int i = 5; |
注意: ; 也是一个完整的表达式,即使没有任何变量、操作符以及方法调用。
1 | public class HelloWorld { |
语句块
从 { 开始 到对应的 } 结束,即为一个语句块,也称为:复合语句,是很多个语句的组合。
1 | public class HelloWorld { //类对应的块 |
Java 编码规范
- 程序最开始编写导入包和类语句,即 import 语句,import 语句可以有多行,编写完 import 语句后空一行;
- 定义 public 类,顶格书写。类的主体左括号 “{” 不换行书写,右括号 “}” 顶格书写;
- 定义 public 类中的变量,缩进书写;
- 定义方法用缩进书写,方法的左括号 “{” 不换行书写,右括号 “}” 和方法首行第一个字符对齐;方法体要再次缩进书写,最后一个变量定义和第一个方法定义之间、方法和方法之间最好空一行;
- 方法名和紧跟在其后的左括号 “(” 无空格,该左括号和其后的标识符之间无空格。多个参数之间的逗号和前一个参数紧靠,与后一个参数空一格。
- 在一行内只写一个语句,并采用空格、空行来保证语句容易阅读。
关于编码规范,可以以权威公司(Google 等)编码规范为参考。
Java 包名(Package)命名规范
每个 Java 开发人员都可以开发自己的 Java 项目,Coder 可以为 Java 项目中的包定义各种各样满足命名规范定义的名字。
但是,我们需要尽可能保障每个 Java Package 命名的唯一性,尤其是在你上传编写好的 Java 库到第三方平台供他人使用时,这尤为重要(第三方平台一般会进行唯一性检验,成功后才允许你上传,否则认为包名冲突了)。
这就要求我们,尽可能的在 Package 命名时:
为自己定义的包名前加上唯一的前缀
1 –> 公司项目命名
一般公司项目中,包名的命名规则可定义为如下:
com.公司名.项目名.模块名
2 –> 团队项目
一般公司项目中,包名的命名规则可定义为如下:
team.公司名.项目名.模块名
3 –> 个人项目命名
那么,我们的个人项目又怎么命名呢?
indi(individual)–>
个人发起,但非自己独自完成的项目(可公开或私有项目),但 Copyright 主要属于发起者。
命名规则如下:
indi.发起者名.项目名.模块名
pers(personal)–>
个人发起,独自完成,可分享的项目,Copyright 属于个人。
命名规则如下:
pers.个人名.项目名.模块名
人发起,独自完成,非公开的私人使用的项目,Copyright 属于个人。
命名规则如下:
priv.个人名.项目名.模块名
install_url
to use ShareThis. Please set it in _config.yml
.