`
tangqs
  • 浏览: 18501 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

第二章 Java基础语法(1)

阅读更多

    在这一章中,我们将要介绍一些Java的基础语法,比如,Java的命名规则,Java的数据类型,如何定义一个变量,以及Java的运算符等等。虽然这些都是比较简单的内容,本章还是值得学习一下,毕竟是“磨刀不误砍柴工”。

2.1         注释

    注释,也就是给代码加上一段说明性文字以帮助我们理解程序实现的功能,注释的存在并不会影响程序的执行。在Java中,一共有三种注释方式:单行注释,多行注释以及文档注释。

    首先看单行注释,Java中的单行注释是来源于C++的,它以双斜杠“//”开头,知道该行的末尾。这种风格的注释方式因为书写比较容易,使用起来也比较方便,因此使用的频率是非常高的,一般,当我相对代码中的某一两行进行注释时,我通常会使用这种单行注释。下面就是一个单行注释的例子。

// 双斜杠之后的内容是单行注释。 

int i = 10;  //单行注释也可以放在一条语句的后面

    接着再看多行注释,多行注释比单行注释的历史要悠久的多,这种风格继承于C语言,当然C++中也包含这种多行注释。多行注释以“/*”开始,直到“*/”为止,在这其中的内容是属于注释,并且注释内容可以跨行。在C语言中只有这一种注释方式,不管我们是否只想注释一行代码,都必须将注释放置于“/*”与“*/”之中,我记得当初学习C语言时,这是让我感觉比较痛苦的一点。下面我给出了一个多行注释的例子:

/* 这个注释方式

可以跨越多行

我确定一定以及肯定

这些注释

不会影响代码的执行

*/

    在使用多行注释时,需要注意,多行注释并不支持嵌套,看下面的例子。

/* 注释之中,又嵌套了下面

  /*这个注释*/

  可是

  这是错误的*/

    第三种注释方式要特殊一点,因为它的作用不仅仅是用于注释代码,它其实还背负了一个更重要的使命——为程序产生文档。一个好的软件,不仅仅是有强大的功能,清晰的结构,还有一点不能忽视的是需要提供一份完整的文档。对于程序员来说,在编写代码文档时,最大的问题就是当代码改变时,如何改变文档。如果文档和代码是分离的,那么每次修改代码时,还需要在另外一个地方修改代码,这会成为一件比较痛苦的事情。而如果我们将文档能和代码放在一起时,就会发现,当我们一旦修改了代码,我们可以就近修改文档,这样对于程序员来说,工作会变得轻松很多(不管怎么说,写文档都不是一件轻松的事情。J)。文档注释和多行注释很像,只不过文档注释是以“/**”开头(是两颗星),以“*/”结尾。下面是一个文档注释的例子。

/**

 *  这是一个文档注释的例子,

 *  注释的内容同样也能跨越多行,

 *  在每行的开头,我加了一个*,这不是必须的

 *  但是,这样可以显得更美观。

 */

public static void main(String[] args) {

}

    上面这个例子中,我定义了main方法的文档。这只是产生Java文档的第一步,等到我们的程序完成之后,需要向用户提交文档时,我们可以使用JDK提供的javadoc命令以产生程序文档,关于javadoc的使用,可以参照附录的内容,在这里我就不罗嗦了。

注释的基本用法我们就介绍到这里,虽然文档注释中还有许多值得关注的地方,不过我不打算再花更多的时间讲解它们。接下来,我们再来看看如何对待注释。在这里给出三个对注释的态度,你会倾向于选择哪个?

1)        在程序中不写或者很少写注释。

2)        在程序中尽可能详细的将注释写下来。

3)        在程序中有选择地写注释,对于复杂的代码添加注释,对于简单的代码不使用注释。

    如果你选择了第3个选项,那需要恭喜你了,至少你已经有了一个好的开始(虽然也许从骨子里你更偏向于选1)。现在我需要花一点篇幅来分别对这三个选项做一些讨论。

首先看看选项1,在现实生活中,自觉或者不自觉的持有这个观点的人是非常多的,对于初学者,在代码中不写注释非常普遍,我听过他们中的有些人对此的辩解有“当时全部精力都放在代码上,根本没空写注释。”,“我写程序都跌跌撞撞的,还谈什么写注释。”,我们先姑且认可这些人的理由;可是我也碰到过很多有多年经验的程序员也没有写注释的习惯,这就让人觉得不安了。就我的看法,注释是程序中不可或缺的一个环节,它最大的作用就是帮助我们记住自己曾经做过的工作,帮助同伴理解自己的代码。在一个有一定规模的代码中,如果没有注释,或者注释属于稀有物种的时候,那这段代码就有危险了,这种代码的可读性将会随着代码以及时间的延续而急剧降低。准备维护这段代码的程序员可以从这些代码中闻到煤气的味道,也许一个小火苗就可以让他深陷火海。

    接着再看看选项2,这个观点也能引起不少人的赞同——我曾经就支持这一观点。支持这一观点的人通常有如下理由:既然注释可以帮助我们理解程序,可以帮助我们记录自己的想法,那么将代码中的注释写的详细一些,将会提高程序的可读性以及可维护性。这个理由看上去不错,可是他是否成立呢?这一观点实际上是对观点1的全盘否定,这让我想起两句成语:“矫枉过正”和“过犹不及”。事实上在代码中加入太多的注释不但不会提高可读性,反而会极大的降低可读性,可以想象一下,在一个充满了 // /*   */的源程序中查找间杂在其中的代码将会是一种怎样可怕的情形。

    现在就剩下选项3了,这个观点体现了儒家“中庸”的思想。根据敏捷编程的观点,代码就是最好的文档,结构清晰的代码对于提高代码可读性是非常重要的,在此基础之上,我们对重要的方法或者比较深奥的代码添加必要的注释,这样可以充分发挥注释的优势,并保持代码的整洁。

    最后做个总结陈词。注释是个双刃剑,适当的使用可以提高程序的可维护性,而过度的使用注释将会对代码造成非常大的危害。

 

2
0
分享到:
评论

相关推荐

    第二章java基础语法.docx

    第二章java基础语法.docx 第二章java基础语法.docx第二章java基础语法.docx 第二章java基础语法.docx

    Java语言程序设计:第二章 Java语言语法基础.ppt

    Java语言程序设计:第二章 Java语言语法基础.ppt

    计算机后端-Java-Java核心基础-第06章 Java基本语法4 16. 质数输出的实现方式二.avi

    计算机后端-Java-Java核心基础-第06章 Java基本语法4 16. 质数输出的实现方式二.avi

    计算机后端-Java-Java核心基础-第06章 Java基本语法4 22. 项目二登记收入功能的实现.avi

    计算机后端-Java-Java核心基础-第06章 Java基本语法4 22. 项目二登记收入功能的实现.avi

    java基础语法.doc

    想要入门java童鞋的可以看这篇文档,可以快速的入门java

    Java 基础学习PPt---适合准备学习Java的初学者

    第一章 Java 概述 第二章 Java 基础语法【上】 第三章 java 基础语法【下】 第四章 面向对象 【上】 第五章 面向对象 【下】

    Java课件最全

    Java基础教程,最全版本 第1章 Java环境及配置 第2章 Java基本语法 第3章 类和接口 第4章 Java Applet 第5章 Java图形处理 第6章 Java用户界面技术 第7章 异常、事件和多线程机制 第8章 输入输出技术 第9章 ...

    零基础学Java Web开发

     第2章 Java基础语法  第3章 Java面向对象编程  第二篇 JSP基本知识  第4章 JSP基本语法  第5章 JSP内置对象  第6章 JSP与JavaBean  第7章 JSP与JDBC  第8章 Servlet编程  第9章 Servlet编程  第...

    java基础教学-java初级资料.zip

    第二章 java 语言语法1 第三章 java 语言语法2 第四章 java 数组 第五章 面向对象1 第六章 面向对象2 第七章 面向对象3 第八章 java常用类库1 第九章 java常用类库2 第十章 异常处理 第十一章 java集合 第十二章 ...

    java学习课件第二章

    第二章、java语法基础 第三章、面向对象特征 第四章、applet及其应用 第五章、图形用户界面设计 第六章、异常处理 第七章、线程 第八章、集合操作 第九章、文件输入输出 第十章、网络编程

    java自学教程

    第1章 Java环境及配置 第2章 Java基本语法 第3章 类和接口 第4章 Java Applet 第5章 Java图形处理 第6章 Java用户界面技术 第7章 异常、事件和多线程机制 第8章 输入输出技术 第9章 Java数据库技术 第10章 ...

    JAVA自学教程(史上最全).ppt

    第1章 Java环境及配置 第2章 Java基本语法 第3章 类和接口 第4章 Java Applet 第5章 Java图形处理 第6章 Java用户界面技术 第7章 异常、事件和多线程机制 第8章 输入输出技术 第9章 Java数据库技术 第10章 ...

    JAVA语言入门(chm)

    第二章 Java程序开发与运行环境 第三章 Java程序设计基础 第四章 Java应用程序的基本框架 第五章 Java的类 第六章 Java图形用户接口 第七章 多线程 第八章 Java的"异常" 第九章 Java输入输出操作

    java学习课件第三章

    第二章、java语法基础 第三章、面向对象特征 第四章、applet及其应用 第五章、图形用户界面设计 第六章、异常处理 第七章、线程 第八章、集合操作 第九章、文件输入输出 第十章、网络编程

    java基础教程.pdf

    本书共 208 页,带课后作业,分八章: 第一章 Java 入门 第二章 基础语法 第三章 Java 类和对象 第四章 Java 高级类特性 第五章 数组和枚举 第六章 常见类的使用 第七章 抽象类和接口 第八章 异常和断言

    java学习课件 第四章

    第二章、java语法基础 第三章、面向对象特征 第四章、applet及其应用 第五章、图形用户界面设计 第六章、异常处理 第七章、线程 第八章、集合操作 第九章、文件输入输出 第十章、网络编程

    编程实践:Java进阶100例

    第二章:MyEclipse的基本使用; 第三章:Java基础语法; 第四章:数组的应用; 第五章:面向对象的Java编辑; 第六章:接口与内部类; 第七章:集合的应用; 第八章:异常和反射; 第九章:初识AWT和Swing; 第十章...

    《Java EE应用开发基础》第二章课件(PDF版)

    济南大学《Java EE应用开发基础》课程课件(PDF版),第二章JSP应用基础 2.1 Servlet应用 2.2 JSP语法 2.3 JSP内置对象 2.4 JSP综合应用实例

    《Java语言程序设计——基础篇》第二章基本程序设计示例.zip

    中文版分为《Java语言程序设计基础篇》和《Java语言程序设计进阶篇》主要介绍语法结构、面向对象程序设计基础知识到面向对象程序设计、图形用户界面设计、异常处理、二进制I/O和递归等内容。进阶篇主要介绍数据结构...

Global site tag (gtag.js) - Google Analytics