JAVA注释

一.Java注释的主要种类

 

Java注释主要有三种:

1.单行注释://注释文字

2.多行注释:/*注释文字*/

3.文档注释:/**注释文字*/

 

 

二.文档注释说明

 

/**注释文字*/注释若干行,并写入javadoc文档,通常这种注释的多行写法如下:

/**

*注释文字

*注释文字

*/

javadoc提取注释的工具/**注释内容*/

 

注:注释内容即不会被编译的内容,只是解释说明。

 

例子:

 

[java]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. import java.awt.*; //导入awt包  
  2. import java.applet.*;  
  3. import java.awt.Color; //导入awt中的Color类  
  4. public class extends Applet implements Runnable {//实现Runnable接口创建线程  
  5. Image buffer;// 定义图像对象  
  6. Graphics gContext;// 定义图形上下文  
  7. Thread animate;// 定义一个线程  
  8. String s = "这是文字动画";  
  9. int w, h, x, y, size = 12// 定义整形变量并赋值  
  10. /** 
  11. * Applet初始化 
  12. * 
  13. * @see java.applet.Applet 
  14. * @return 无 
  15. */  
  16. public void init() {  
  17. w = getWidth();// 返回组件的当前宽度。  
  18. h = getHeight();// 返回组件的当前高度。  
  19. buffer = createImage(w, h);// 创建一个宽W高H的图形区域。 (创建一幅用于双缓冲的、可在屏幕外绘制的图像)  
  20. gContext = buffer.getGraphics();// 获得图像使用的图形上下文  
  21. gContext.setColor(Color.blue);// 设置图形上下文的当前颜色为蓝色  
  22. }  
  23. /** 
  24. * Thread 线程启动操作 
  25. */  
  26. public void start() {  
  27. // 开始animate线程  
  28. if (animate == null) {  
  29. animate = new Thread(this);  
  30. animate.start();  
  31. }  
  32. }  
  33. /** 
  34. * Thread 线程终止时的处理操作 以释放资源 
  35. */  
  36. public void stop() {  
  37. // 结束animate线程  
  38. if (animate != null)  
  39. animate = null;  
  40. }  
  41. /** 
  42. * Runnable接口的实现 
  43. * 执行所需的操作 
  44. */  
  45. public void run() {  
  46. while (true) {  
  47. //X,Y的坐标设定  
  48. x = (w - s.length() * size) / 2;  
  49. y = (h + size) / 2;  
  50. gContext.setFont(new Font("宋体", Font.PLAIN, size));  
  51. gContext.drawString(s, x, y);//绘制一串字符s内容的文本  
  52. repaint();//重画图形  
  53. try {  
  54. animate.sleep(50);//线程休眠50ms  
  55. catch (InterruptedException e) {// 捕获异常  
  56. }  
  57. gContext.clearRect(00, w, h);/*通过使用当前绘图表面的背景色进行填充来清除指定的矩形.0 - 要清除矩形的x 坐标。0 - 要清除矩形的 y 坐标。w - 要清除矩形的宽度。h - 要清除矩形的高度。*/  
  58. if (++size > 40)  
  59. size = 12;  
  60. }  
  61. }  
  62. /** 
  63. * Applet画图操作方法 
  64. * 
  65. * @see java.applet.Applet 
  66. */  
  67. public void paint(Graphics g) {  
  68. g.drawImage(buffer, 00this);//绘制指定的buffer的图像  
  69. }  
  70. /** 
  71. * Applet刷新操作,重新绘制图形 
  72. * 
  73. * @see java.applet.Applet 
  74. */  
  75. public void update(Graphics g) {  
  76. paint(g);//重新调用paint函数绘制图形  
  77. }  
  78. }  

 


三.注释的作用

 

       通过注释可以提高Java源程序代码的可读性,使得Java程序条理清晰,易于区分代码行与注释行。另外通常在程序开发头加入作者,时间,版本,要实现的功能等内容注释。方便后来的维护以及程序员的交流。

 

四.java注解

 

               Annotation(注解)是JDK5.0及以后版本引入的。它可以用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时检查。注解是以‘@注解名’在代码中存在的,根据注解参数的个数,我们可以将注解分为:标记注解、单值注解、完整注解三类。它们都不会直接影响到程序的语义,只是作为注解(标识)存在,我们可以通过反射机制编程实现对这些元数据的访问。另外,你可以在编译时选择代码里的注解是否只存在于源代码级,或者它也能在class文件中出现。
元数据的作用
如果要对于元数据的作用进行分类,目前还没有明确的定义,不过我们可以根据它所起的作用,大致可分为三类:
编写文档:通过代码里标识的元数据生成文档。
代码分析:通过代码里标识的元数据对代码进行分析。
编译检查:通过代码里标识的元数据让编译器能实现基本的编译检查
 

内置注解

@Override 用于检测是否覆盖

 

@Retention元注解

 

@Deprecated的作用是对不应该在使用的方法添加注解(也就是提示你过时了),当编程人员使用这些方法时,将会在编译时显示提示信息,它与javadoc里的@deprecated标记有相同的功能,准确的说,它还不如javadoc @deprecated,因为它不支持参数。

 

@SuppressWarnings,其参数有:(一个注解就是一个类。)

                 deprecation,使用了过时的类或方法时的警告

                 unchecked,执行了未检查的转换时的警告

                 fallthrough,当 Switch程序块直接通往下一种情况而没有 Break时的警告

                 path,在类路径、源文件路径等中有不存在的路径时的警告

                 serial,当在可序列化的类上缺少serialVersionUID定义时的警告

                 finally,任何 finally子句不能正常完成时的警告

                 all,关于以上所有情况的警告

Java注解只需要了解就可以。

 

五.自定义

它类似于新创建一个接口类文件,但为了区分,我们需要将它声明为@interface。

高级应用

1.1. 限制注解的使用范围
1.2. 注解保持性策略
1.3. 文档化功能
1.4. 标注继承
 
2. 读取注解信息
 
属于重点,在系统中用到注解权限时非常有用,可以精确控制权限的粒度。
 
注意:要想使用反射去读取注解,必须将Retention的值选为Runtime。
 
 
总结:
        我认为注释对于做项目很重要,对于新手更是十分重要,养成注释的好习惯对开发项目有很大的好处。所以,我把注释单独拿出来写了一篇blog。        
         注意: 注释的三个种类:// /* */ /** */ 前两种编译器直接跳过,从来不阅读,第三种编译器是可以看懂的,当你使用javadoc这样的命令时会用到,用来生成API时用的。
       注解:这个完全就是给编译器看的。 比如@Ovrride表示这个方法是重写了父类中的方法,而不是自定义的,所以这个时候编译器会去检查你的方法名是否和父类一样,是否写错了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值