- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Hibernate_3_注解
Annotation__注解
JDK1.5中增加新的特色
Annotation注解 相当于程序中的一种标记
编译器、开发工具及其他程序,
可以从源文件、class文件或者在运行时通过反射的多种方式被读取,
而决定干什么事;
注解可以加在 类、方法、属性、参数、局部变量、包 上面
java.lang包中三个基本annotation
@Override 指明重写父类的方法
@Deprecated 指明方法过时
@SuppressWarnings 取消指定的编译器警告 例:当类型不安全时public class Annotation_hashCode_equals {
/**
* HashSet_hashCode_equals
*
* HashSet 采取哈希算法 内部按哈希吗分组划分对象的存储区域
* Object定义的hashCode() 返回对象的哈希吗
* 当HashSet查找对象时 先获取哈希吗 然后根据哈希吗到对应区域查找
* 最后取出这个区域的对象使用equals比较 这样就提高了检索效益
*
* 所以只重写equals() 不重写hashCode()
* 那么equals比较相等的对象可能不等 因为相等的对象可能被放置在不同区域
*
* 为了让相等的对象 放置在同一区域 所以两个equals()相等的对象应该让hash码也相等
*
*/
public static void testHashSet() {
Person p1 = new Person(100, xx, xx@);
Person p2 = new Person(101, yy, yy@);
Person p3 = new Person(100, xx, xx@);
HashSetPerson set = new HashSetPerson();
set.add(p1);
set.add(p2);
//如果你认为p1 和p3应该相同 则需要重写hashCode和equals jvm判断两个对象==时使用equals()比较哈希吗
set.add(p3);
set.add(p1); //这个没有添加进HashSet HashSet 判断两个对象==时使用equals()比较哈希吗 for (Person p : set) {
System.out.println(哈希吗:+p.hashCode()+\ttoString:+p);
}
} /*
* java.lang包中三个基本annotation
@Override 指明重写父类的方法
@Deprecated 指明方法过时
@SuppressWarnings 取消指定的编译器警告 例:当类型不安全时
*/
@SuppressWarnings(deprecation) //deprecation 过时警告
public static void testDeprecated(){
new Thread().stop(); //Thread的stop() 使用Deprecated注解标记此方法已经过时
} //@SuppressWarnings取消指定的编译器警告
@SuppressWarnings({unchecked,unused})
public static void testSuppressWarnings(){
sayHello();
List list=new ArrayList();
} @Deprecated //使用@Deprecated标记此方法过时
public static void sayHello(){
System.out.println(hello);
} @Override //指明重写父类的方法
public String toString() {
return [Annotation_hashCode_equals];
} public static void main(String[] args) {
testHashSet();
}
}
class Person {
private int id;
private String name;
private String email;
//请
文档评论(0)