JAVA中比较两个对象,其实就是判断两个对象的引用变量是否相等
1. ==运算符就是比较引用变量所指向的内存地址是否相同
2. equals(Object o)方法,也是按内存地址比较,但用户可以覆盖Object类的equals方法
User u1=new User("Tom");
User u2=new User("Tom");
User u3=u1;
u3.setName("Jack");
u1==u3//true
u1.equals(u3)//true
u1==u2//false;
u1.equals(u2)//false
3. Java中的一些类覆盖了equals方法,以事项按对象值进行比较,这些类包括,String,Date,Byte,Integer,Short,Character,Long,Float,Double,Boolean
String s1=new String("hello");
String s2=new String("hello");
s1==s2//false,按地址进行比较
s1.equals(s2)//true, 已重写,按值进行比较
4. 重写equals的一个例子
public boolean equals(Object o)
{
//如果和自身比较,返回TRUE
if(this==o) return true;
//如果不是这个类的实例,返回FALSE
if(!o instanceof User) return false;
final User u=(User)o
if(this.getName().equals(u.getName())
return true;
else
return false;
}
分享到:
相关推荐
其最大特色是以六条主线贯穿全书:面向对象编程思想、Java语言的语法、Java虚拟机执行Java程序的原理、在实际项目中的运用、设计模式和性能优化技巧。同时,本书还贯穿了Sun公司的SCJP(Sun Cer......
详细说明中Java中对象与引用的关系,本文有助于你的成长。
java对象与类实例java对象与类实例java对象与类实例java对象与类实例java对象与类实例java对象与类实例java对象与类实例java对象与类实例java对象与类实例java对象与类实例java对象与类实例java对象与类实例java对象...
Java中对象的生命周期 自己总结 Java中对象的生命周期 private构造方法
java 对象的容纳,java 对象的容纳,java 对象的容纳,java 对象的容纳,java 对象的容纳,java 对象的容纳,java 对象的容纳,java 对象的容纳,java 对象的容纳,java 对象的容纳,java 对象的容纳,java 对象的...
个人对于Java对象在JVM中的探讨,Java对象是怎么产生的,内存模型是什么样的?
习题解答-Java面向对象程序设计-邢国波-清华大学出版社.pdf习题解答-Java面向对象程序设计-邢国波-清华大学出版社.pdf习题解答-Java面向对象程序设计-邢国波-清华大学出版社.pdf习题解答-Java面向对象程序设计-邢...
主要用于同一Java对象比较新旧变化数据,判断对象属性内容是否存在变更,并输出详细变更信息。
java中对象的作用,如何获取Request对象 java中对象的作用,如何获取Request对象
Java中面向对象的概念Java中面向对象的概念Java中面向对象的概念Java中面向对象的概念
Java对象的比较方式.doc
Java 面向对象 练习题与答案
java 子类对象赋值给父类对象的使用,包括代码及详解,个人笔记
java面向对象试题 java面向对象试题 java面向对象试题 java面向对象试题
孙卫琴的java面向对象电子书 由于是图片 300m
第1章_Java入门,第2章_基本数据类型,第3章_运算符、表达式和语句第4章_类与对象第5章_继承与接口第6章_内部类与异常类
Java面向对象,自己学习整理的Java的面向对象的思维导图。
在JAVA里,“=”不能被看成是一个赋值语句,它不是在把一个对象赋给另外一个对象,它的执行过程实质上是将右边对象的地址传给了左边的引用,使得左边的引用指向了右边的对象。JAVA表面上看起来没有指针,但它的引用...
这个资源是一个Java面向对象知识点的思维导图,它涵盖了Java中面向对象编程的核心概念和重要知识点。导图中包含了类、对象、继承、多态、封装等基本概念,同时也包括了接口、抽象类、异常处理、泛型等高级特性。这个...