目录
Java代码的语句
1.类的定义
Java程序代码必须放在一个类中,初学者可以简单地把一个类理解为一个Java程序。类使用class
字定义,在class前面可以有类的修饰符,类的定义格式如下:
修饰符 class 类名{
程序代码
}
2.语句的注意点
在编写Java程序时,有以下几点需要注意。
(1)Java程序代码可分为结构定义语句和功能执行语句,其中,结构定义语句用于声明一个类或方法,功能执行语句用于实现具体的功能。每条功能执行语句的最后必须用分号(;)结束。如下面的语句所示:
System.out.println ("这是第一个Java程序!");
需要注意的是,在程序中不要将英文的分号(;)误写成中文的分号(;),如果写成中文的分号, 编译器会报告“illegal character”(非法字符)错误信息。
(2)Java语言是严格区分大小写的。在定义类时,不能将class写成Class,否则编译器会报错。程序中定义一个computer的同时,还可以定义一个Computer,computer和Computer是两个完全不同的符号,在使用时务必注意。
(3)在编写 Java程序时,为了便于阅读,通常会使用一种良好的格式进行排版,但这并不是必须的,也可以在两个单词或符号之间插入空格、制表符、换行符等任意的空白字符。例如,下面这段代码的编排方式也是可以的。
public class HelloWorld {public static void
main (String[
] args) {System.out.println ("这是第一个Java程序!");}}
虽然Java没有严格要求用什么样的格式编排程序代码,但是,考虑到可读性,编写的程序应代码整齐美观、层次清晰。常用的编排方式是一行只写一条语句,符号“{”与语句同行,符号“}”独占一行,示例代码如下:
public class HelloWorld {
public static void main (String[] args) {
System.out.println ("这是第一个Java程序!");
}
}
(4) Java 程序中一个连续的字符串不能分成两行书写。例如,下面这条语句在编译时将会报错。
System.out.println ("这是第一个
Java程序!");
为了便于阅读,需要将一个比较长的字符串分两行书写,可以先将字符串分成两个短的字符串,然后用加号(+)将这两个字符串连起来,在加号(+)处换行。例如,可以将上面的语句修改成如下形式:
System.out.println ("这是第一个" +
"Java程序!");
Java程序的基本格式
Java程序的基本格式如下所示:
// 单行注释
/*
多行注释
*/
// 导入需要使用的类
import java.util.Scanner;
// 定义类
public class ClassName {
// 定义全局变量
static int num = 10;
// 定义方法
public static void main(String[] args) {
// 局部变量
int i = 0;
// 控制台输出
System.out.println("Hello World!");
// 创建Scanner对象
Scanner scanner = new Scanner(System.in);
// 读取控制台输入
String input = scanner.nextLine();
// 调用方法
int result = add(1, 2);
}
// 定义方法
public static int add(int a, int b) {
return a + b;
}
}
其中,Java程序的基本格式包括以下几个部分:
- 注释:Java程序支持单行注释和多行注释两种方式。
- 导入类:使用import关键字导入需要使用的类。
- 定义类:使用class关键字定义一个类。
- 定义全局变量:在类中定义全局变量。
- 定义方法:在类中定义方法。
- 控制台输出:使用System.out.println()方法输出内容。
- 控制台输入:使用Scanner类读取控制台输入。
- 包声明:如果有的话,可以用来指定程序所属的包。格式为package 包名;,一般放在程序的第一行。
- 导入语句:如果有的话,用来引入所需的其他类。格式为import 包名.类名;,可以一次导入多个类,多个类之间用逗号分隔。一般放在包声明之后。
- 类声明:Java程序中必须包含一个类,类名与文件名必须一致。格式为public class 类名{...},其中...处是类的成员(成员变量和成员方法)。
- 主方法:Java程序的入口点,格式为public staticvoid main(String[] args){...},其中...处是程序的具体执行代码。
下面是一个简单的Java程序的基本格式示例:
package com.example;
import java.util.Scanner;
public class MyProgram {
public static void main(String[] args) {
// 程序的具体执行代码
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个整数: ");
int num = scanner.nextInt();
System.out.println("你输入的整数是: " + num);
}
}
Java程序中的注释
在Java中,有三种类型的注释:单行注释,多行注释和文档注释。
1.单行注释:
用于在代码的一行中注释单个语句或表达式。以两个斜杠(//)开头,注释内容直到行末为止。
例如:
// 这是一个单行注释
int x = 5; // 初始化变量x为5
2.多行注释:
用于注释多行代码或多个语句。以斜杠和星号(/)开头,以星号和斜杠(/)结尾。
例如:
/*
这是一个多行注释
它可以跨多行
*/
int x = 5;
3.文档注释:
用于编写程序的文档和说明。以斜杠和两个星号(/**)开头,以星号和斜杠(*/)结尾。通常用于生成程序的API文档。
例如:
/**
* 这是一个文档注释
* 它用于描述方法的功能、参数和返回值
*/
public void myMethod() {
// 方法的实现
}
Java 文档注释可以用来自动地生成文档。在 JDK 中有个 javadoc 的工具,可以由源文件生成一个 HTML 文档。使用这种方式注释源文件的内容,显得很专业,并且可以随着源文件的保存而保存起来。也就是说,当修改源文件时,也可能对这个源代码的需求等一些注释性的文字进行修改,那么,这时候可以将源代码和文档一同保存,而不用再另外创建一个文档。
Javadoc 的第一行是类或方法的简短描述,之后是详细描述,因为所有的 Javadoc 都被视为 HTML,所以可以多个段落可以用 <p> 标签
类的 Javadoc
第一段:概要描述,通常用一句或者一段话简要描述该类的作用,以英文句号作为结束
第二段:详细描述,通常用一段或者多段话来详细描述该类的作用,一般每段话都以英文句号作为结束。详细描述一般用一段或者几个锻炼来详细描述类的作用,详细描述中可以使用 html 标签,如 <p>、<pre>、<a>、<ul>、<i> 等标签,通常详细描述都以段落 p 标签开始。详细描述和概要描述中间通常有一个空行来分割。
第三段:文档标注,用于标注作者、创建时间、参阅类等信息,还有泛型信息。
// import statements
/**
* 简短的说明。
* 详细的说明
* @author 姓名 <address @ example.com>
* @version 1.6(程序的当前版本号)
* @since 1.2(加入该类时程序的版本号)
*/
public class Test {
// class body
}
方法的 Javadoc
写在方法上的文档标注一般分为三段:
第一段:概要描述,通常用一句或者一段话简要描述该方法的作用,以英文句号作为结束
第二段:详细描述,通常用一段或者多段话来详细描述该方法的作用,一般每段话都以英文句号作为结束
第三段:文档标注,用于标注参数、返回值、异常、参阅等
方法详细描述上经常使用 html 标签来,通常都以 p 标签开始,而且 p 标签通常都是单标签,不使用结束标签,其中使用最多的就是 p 标签和 pre 标签,ul 标签,i 标签。
pre 元素可定义预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体,pre 标签的一个常见应用就是用来表示计算机的源代码。
一般 p 经常结合 pre 使用,或者 pre 结合@code 共同使用 (推荐@code 方式)
一般经常使用 pre 来举例如何使用方法
/**
* 简短的单行描述。 (1)
* <p>
* 更长一些的描述可以写在这里。 (2)
* </p>
* 在 HTML 段落分隔的连续段落中还可以有更多注释。
*
* @param variable 描述文本。 (3)
* @return 描述文本。
*/
public int methodName (...) {
// method body with a return statement
}
/**
* 求和。
*
* @param parameter1 参数 1
* @param parameter2 参数 2
* @return 两数和
*/
public int sum(int parameter1, int parameter2) {
return parameter1 + parameter2;
}
变量的 Javadoc 注释
与方法类似的注释也可以用于变量的注释,只包含了对变量的简短描述。
/**
* 对变量的描述。
*/
private int debug = 0;
4.注释的规范
原文:
注释形式统一
在整个应用程序中,使用具有一致的标点和结构的样式来构造注释。如果在其他项目组发现他们的注释规范与这份文档不同,按照他们的规范写代码,不要试图在既成的规范系统中引入新的规范。
注释的简洁
内容要简单、明了、含义准确,防止注释的多义性,错误的注释不但无益反而有害。
注释的一致性
在写代码之前或者边写代码边写注释,因为以后很可能没有时间来这样做。另外,如果有机会复查已编写的代码,在今天看来很明显的东西六周以后或许就不明显了。通常描述性注释先于代码创建,解释性注释在开发过程中创建,提示性注释在代码完成之后创建。修改代码的同时修改相应的注释,以保证代码与注释的同步。
注释的位置
保证注释与其描述的代码相邻,即注释的就近原则。对代码的注释应放在其上方相邻或右方的位置,不可放在下方。避免在代码行的末尾添加注释;行尾注释使代码更难阅读。不过在批注变量声明时,行尾注释是合适的;在这种情况下,将所有行尾注释要对齐。
注释的数量
注释必不可少,但也不应过多,在实际的代码规范中,要求注释占程序代码的比例达到 20% 左右。注释是对代码的“提示”,而不是文档,程序中的注释不可喧宾夺主,注释太多了会让人眼花缭乱,注释的花样要少。不要被动的为写注释而写注释。
删除无用注释
在代码交付或部署发布之前,必须删掉临时的或无关的注释,以避免在日后的维护工作中产生混乱。
复杂的注释
如果需要用注释来解释复杂的代码,请检查此代码以确定是否应该重写它。尽一切可能不注释难以理解的代码,而应该重写它。尽管一般不应该为了使代码更简单便于使用而牺牲性能,但必须保持性能和可维护性之间的平衡。
多余的注释
描述程序功能和程序各组成部分相互关系的高级注释是最有用的,而逐行解释程序如何工作的低级注释则不利于读、写和修改,是不必要的,也是难以维护的。避免每行代码都使用注释。如果代码本来就是清楚、一目了然的则不加注释,避免多余的或不适当的注释出现。
必加的注释
典型算法必须有注释。在代码不明晰或不可移植处必须有注释。在代码修改处加上修改标识的注释。在循环和逻辑分支组成的代码中添加注释。为了防止问题反复出现,对错误修复和解决方法的代码使用注释,尤其是在团队环境中。