黑马程序员技术交流社区
标题:
程序有点儿搞不懂了
[打印本页]
作者:
励志Java_鸿政
时间:
2015-1-9 01:33
标题:
程序有点儿搞不懂了
package cn.itcast.collection;
public class Student {
private String name;
private int age;
public Student(String name,int age){
this.age = age;
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
//该对象的字符串表示形式(若不写该方法则输出的是一个地址)
public String toString(){
return "Student " + name +"..."+ age;
}
==============================================
//去除new对象的重复
public boolean equals(Object obj){
if(obj == null)
return false;
if( this == obj)
return true;
if(obj instanceof Student){
Student s = (Student)obj;
//比姓名和年龄,相同返回真,不同返回假 this s
return this.name.equals(s.name) && this.age == s.age;
}
return false;
}
}
就是一个外部的学生类,然后===========下面的这些东西,我只知道是用来取出new出来一个对象这中重复的!但是还是不太理解!能不能有人帮我注释一下!谢啦:)
.
作者:
潘耿威
时间:
2015-1-10 14:32
equals 重写了这个比较方法。不是取出重复的意思,用来判断是不是同一个引用,比较的是地址,如果相同就返回真。下一个判断,如果是同一个父类,那么就判断他们的值,如果值相同,也返回真。清楚明白了吧
作者:
励志Java_鸿政
时间:
2015-1-10 15:05
潘耿威 发表于 2015-1-10 14:32
equals 重写了这个比较方法。不是取出重复的意思,用来判断是不是同一个引用,比较的是地址,如果相同就返 ...
还是有点儿不太理解~我知道取出不是new对象的重复,如果要取出new出来的重复就不会了 , 看了这个也看的不太懂
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2