java 1.5 注解[非常重要 比每举重要]
1.5后的新特性
比每举重要多了
而且还是趋势
未来的开发模式,基本上都是要基于注解的
EJB JPA SPRING2.5 HIBERNATE STRUTS2
---------小例子------------
package com.ncs.annotation;
public class AnnotationDemo {
public static void main(String[] args) {
System.runFinalizersOnExit(true);
//在ECLIPSE里会画删除线,提示方法过时
//其实在是告诉javac
}
}
-----------------------
那么现在去 cmd 里看看
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
C:\Documents and Settings\hubin>set path=C:\jdk6\bin;%path%;
C:\Documents and Settings\hubin>cd D:\javaworkspace\enhance\src\com\ncs\annotation
C:\Documents and Settings\hubin>d:
D:\javaworkspace\enhance\src\com\ncs\annotation>javac AnnotationDemo.java
注意:AnnotationDemo.java 使用或覆盖了已过时的 API。
注意:要了解详细信息,请使用 -Xlint:deprecation 重新编译。
D:\javaworkspace\enhance\src\com\ncs\annotation>javac -Xlint:deprecation AnnotationDemo.java
AnnotationDemo.java:6: 警告:[deprecation] java.lang.System 中的 runFinalizersOnExit(boolean) 已过时
System.runFinalizersOnExit(true);
^
1 警告
D:\javaworkspace\enhance\src\com\ncs\annotation>
---------------------------------
好现在注解上场了
------------------------
package com.ncs.annotation;
public class AnnotationDemo {
@SuppressWarnings("deprecation")
public static void main(String[] args) {
System.runFinalizersOnExit(true);
//在ECLIPSE里会画删除线,提示方法过时
//其实在是告诉javac
//写了@SuppressWarnings("deprecation")
//就不警告了
}
}
----------------------------------
然后再去 cmd
---------------
D:\javaworkspace\enhance\src\com\ncs\annotation>javac AnnotationDemo.java
D:\javaworkspace\enhance\src\com\ncs\annotation>
---------------------------------一下就过去了
★注解就是告诉 JAVAC 说 你要怎么样,不要怎么样..
一个注解就是一个类!!!!!
写了@SuppressWarnings("deprecation")
就相当于 创建一个实例
再看一个
-------------
package com.ncs.annotation;
public class AnnotationDemo {
@SuppressWarnings("deprecation")
public static void main(String[] args) {
System.runFinalizersOnExit(true);
//在ECLIPSE里会画删除线,提示方法过时
//其实在是告诉javac
//写了@SuppressWarnings("deprecation")
//就不警告了
}
@Deprecated
public static void sayHi() {
//总有一天这个方法要过时,
//但是你不敢删除,
//因为N多人在用,你一删人家怎么 compile 呢?
//但是你又想告诉人家 ,这方法过时了,怎么办??
//注解,
System.out.println("hello,zxx");
}
}
----------------------------
JDK给我们提供了三个 annotation 在java.lang下,可以自己去看
@Override
@Deprecated
@SuppressWarnings
注解就是一种标记,在程序中加注解就是给程序
打一个标记,以后 编译器 可以通过反射来了解
你的类是什么样子的,以便它采取相应措施.
比如 看见@Deprecated 就画删除线
注解可以加在包 类 字段 方法 方法的参数上