你的位置:首页 > Java教程

[Java教程]Java 学习整理笔记(二)Java基本语法结构


一、源文件的编写

Java是完全面向对象的语言,所以Java的所有操作都是基于类(class)完成的。Java中所有程序的代码都需要放在一个类中,类用关键字class声明,在class之前可以添加一些修饰符,Java应用程序的源文件由若干个书写形式相互独立的类组成。

1.例子:

// HelloDate.javaimport java.util.Date;  //引入 java.util 包中的Date类public class HelloDate{  /*  * 该程序的目的是:输出当前系统的时间  */      public static void main(String[] args){      System.out.print("Hell,it's");      System.out.println(new Date());   }}  

(1)import语句的作用是引入一个额外的类或一个类包。注意,是“额外的”,因为有一个类包是被自动引入到每一个Java程序文件中的,就是 java.lang 包。

import java .util.Date 的作用是引入 java.util 包中的Date类。

如果不想一个一个地引入同一个包中的多个类,就可以用“*”来代表这个包中的所有类,如 import java.util.* 。

(2)类用关键字class声明,类名必须与文件名称相同。前面的关键字public表示这是一个公共类,可以被外界访问。

(3)class HelloDate 称为类声明,之后的第一个大括号和最后一个大括号以及他们之间的内容叫类体。

(4)至少有一个名称与主文件相同的类,且这个类中必须含有一个main()函数,其形式必须如下:

public static void main(String[] args){  ... //程序代码}

其中,关键字public表示这是一个对外公开的函数,传入 main() 的参数,是一个 String对象数组。

(5)这个程序并未使用args,但Java编译器要求必须要这样声明main方法,因为args被用来存储“命令行参数”。

(6)Java允许一个程序的多个类中可以有多个main方法。不过,如果某个程序拥有多个类,仅有命令行所调用的class的main()会被唤醒——这个main方法必须是public,其所属类则无所谓是否为public。(可以这么理解:public static void main(String[] args) 这句代码为程序的入口、开始)

System.out.println(new Date());

(7)System.out.println 的作用是向屏幕上输出一条语句并换行。这里传入的参数是Date类的一个对象,对象用 new 操作方法创建。

(8)“为什么输出的结果不是像这样‘java.util.Date@de6ced’是一个对象的地址(引用),而是一个字符串呢?”是因为Java类库中的每个非基本类型的对象都具备一个 toString()方法,当编译器希望得到一个String,而手上却只有那些对象的情况下,这个函数便会被调用。如果希望自己编写的类也能具备这种行为,只要为它编写一个 toString方法即可。

(9)这个语句执行完成以后,这个对象便不会再被使用而变成了垃圾(garbage)。

2.Java之中有一种所谓的“垃圾回收机制(Garbage Collection)”,它会逐一监视所有通过 new 产生的对象,并在这些对象不再引用时释放这个对象所占据的内存空间,所以完全不必担心因垃圾过多而造成“内存泄漏(Memory Leak)”。

3.注意事项:

(1)Java是严格区分大小写的。

(2)Java程序中一句连续的字符串不能分开在两行中写。

(3)每行语句都以分号“;”表示结尾。

二、源文件的命名规则

1.Java源文件的命名规则:

(1)如果源文件中有多个类,那么最多只能有一个类为public类。

(2)如果有一个类声明为public类,那么源文件的名字必须与这个类的名字完全相同,并且扩展名是 .java 。

(3)如果源文件没有public类,那么源文件的名字只要与某一个类的名字相同,并且扩展名是 .java 即可。

2.Java中不成文的规定:

(1)Java类的名称通常以大写字母开头。如果类名由多个单词组成,则每个单词的首字母均应为大写,如 DateTest 。如果类名称中包含单词缩写,则这个缩写词的每个字母均应为大写,如

(2)方法的名称的第一个单词应该以小写字母开头,后面的单词以大写字母开头,如 getName 。构造函数除外。

(3)常量的名称应该都使用大写字母,并且能表示出该常量的完整含义。如果一个常量名由多个单词组成 ,则用下划线进行分隔,如 MAX_SIZE 。

3.良好的编程习惯:

(1)注意缩进。程序块采用缩进风格编写,不允许把多个短句写在一行中,即一行只写一条语句。

(2)注重注释。一般情况下,源程序的有效代码量应在10%-20%之间,注释应与其描述的代码相近。对代码的注释应放在其上方或右方(对单条语句的注释)相邻的位置,不可放在下方。另外,在实际项目开发中,在修改代码后,一定要相应地修改注释的内容,保持代码和注释的同步。

(3)标识符命名。标识符的命名要力求做到见名知意。同时使用完整的单词或大家可以理解的缩写,避免使人产生误会。对变量的命名,切忌采用单个字符。

4.关键字和标识符:

(1)关键字又称为保留字。在程序中具有特定的含义,Java预定义的标识符,而用户自定义的标识符不能与关键字重名。

(2)标识符就是表示程序中的事物(或对象)的名字。Java中的包、类、方法、参数和变量等的名字都是标识符。

Java语言规定标识符只能由字母(大小写)、数字(0~9)、下划线(_)和美元符号($)这4种字符组成,且第1个字符不能是数字。当然还有,用户自定义的标识符不能和关键字重名。

需要注意的是,Java是大小写敏感的语言,class和Class、System和system分别代表完全不同的符号。

三、注释与内嵌式文档

1.注释(Comment)是对代码功能和用途的说明。在程序中编写适当的注释,将使程序代码更容易阅读,增强代码的可维护性。

Java提供以下三种注释风格:

(1)单行注释。这种注释风格源于C++,用于单行注释,以 // 开头,直至行末。

// 这是单行注释

 

 

 

(2)多行注释。这种注释风格最初为C所使用,C++也沿用了这种风格。以 /* 开头,后接的注释内容可以跨越多行,最后以 */ 结尾。

/*多行注释,它可以跨越多行*/

 

 

 

(3)文档注释。文档注释以 /** 开头,后接的注释内容也可以跨越多行,并以 */ 结尾。部分程序员喜欢在多行中以 * 作为每行开头,所以通常可以看到这样的写法:

/***这是文档注释*可以通过调用 javadoc 命令生成HTML说明文档*/

 

 

2.内嵌式文档就是文档和代码在同一个文件中。文档被特殊的注释语法标记出来,再通过一个工具,将这些注释文档从中提取出来。

javadoc就是用来将内嵌式文档提取出来的工具,在JDK安装目录的bin目录下可以找到这个工具。用这个工具不但能提取出由特殊标记所标识出的信息,还会提取出这些信息所属的类名和函数名等信息。即一份标准的说明文档。

javadoc的输出结果是HTML文档,通过Web浏览器便可以阅读。javadoc还可以将用户所预设的HTML命令加入到它所产生的文档中,这样用户就可以根据自己的想法对即将生成的文档进行美化。