=方法怎么在Java项目中进行重写?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
1.对象类的equals()方法:
比较两个对象是否是同一个对象,等于()方法比较两个对象,是判断两个对象引用指向的是同一个对象,即比较2个对象的内存地址是否相等。是则返回真正的
对象类是所有类的父类,它的=方法自然会被所有类继承,有一个子字符串类对=方法进行了覆盖(重写),使其具有了新功能
2.对象类的equals()方法与==没区别
以重写了=()方法,把=()方法的判断变为了判断其值
当有特殊需求,如认为属性相同即为同一对象时,需要重写=()
总结:
1。基本数据类型数据值只能用
2。对于引用数据类型,和对象的=方法是一样的。(查看源码)
由于字符串类对父类对象的=方法的重写,导致=与==唯一的区别在于比较对象
例题:
重写比较规则,判断两名学员(学生)是否为同一对象
学生相关属性
Id(学号),姓名(姓,名)、年龄(年龄)
如果两名学员的学号以及姓名相同,则为同一对象
<强> 1对学生类进行封装然后在里面重写=方法强>
方法代码:
public class Student { ,private int id; ,private String 名称; ,private int 年龄;//重,@Override 写=方法 ,public boolean  equals (Object obj), { ,如果(obj instanceof 学生){ Student 才能;s1=(学生)obj; return 才能;this.id==s1.id&, this.name==s1.name&, this.age==s1.age; ,}else { System.out.println才能(“错误“); return 才能;假; ,} ,} ,public 学生(int id, String 名字,,int 年龄),{=,this.id id;=,this.name 名称;=,this.age 年龄; ,} ,public int  getId (), { ,return id; ,} ,public void  setId (int id), {=,this.id id; ,} ,public String  getName (), { ,return 名称; ,} ,public void  setName (String 名称),{=,this.name 名称; ,} ,public int  getAge (), { ,return 年龄; ,} ,public void  setAge (int 年龄),{=,this.age 年龄; ,} }
<>强测试类进行测试强>
, public static void main (String [], args), { ,Student s1 =, new 学生(1,“张三“,18); ,Student s2 =, new 学生(1,“张三“,18); ,Student s3 =, new 学生(1,“张三“,18); ,Student s4 =, new 学生(1,“张三“,20); ,System.out.println (s1.equals (s2)); ,System.out.println (s3.equals (s4)); 之前,}><强>以上程序执行结果强>
看完上述内容,你们掌握=方法怎么在Java项目中进行重写的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
=方法怎么在Java项目中进行重写