forked from sduonline/sc-resources
		
	增加淘宝群内容,修改部分文件组织
This commit is contained in:
		@@ -0,0 +1,26 @@
 | 
			
		||||
package com.mj.model;
 | 
			
		||||
 | 
			
		||||
public class Key {
 | 
			
		||||
	protected int value;
 | 
			
		||||
 | 
			
		||||
	public Key(int value) {
 | 
			
		||||
		this.value = value;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	@Override
 | 
			
		||||
	public int hashCode() {
 | 
			
		||||
		return value / 10;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	@Override
 | 
			
		||||
	public boolean equals(Object obj) {
 | 
			
		||||
		if (obj == this) return true;
 | 
			
		||||
		if (obj == null || obj.getClass() != getClass()) return false;
 | 
			
		||||
		return ((Key) obj).value == value;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	@Override
 | 
			
		||||
	public String toString() {
 | 
			
		||||
		return "v(" + value + ")";
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,43 @@
 | 
			
		||||
package com.mj.model;
 | 
			
		||||
 | 
			
		||||
public class Person implements Comparable<Person> {
 | 
			
		||||
	private int age;   // 10  20
 | 
			
		||||
	private float height; // 1.55 1.67
 | 
			
		||||
	private String name; // "jack" "rose"
 | 
			
		||||
	
 | 
			
		||||
	public Person(int age, float height, String name) {
 | 
			
		||||
		this.age = age;
 | 
			
		||||
		this.height = height;
 | 
			
		||||
		this.name = name;
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	@Override
 | 
			
		||||
	/**
 | 
			
		||||
	 * 用来比较2个对象是否相等
 | 
			
		||||
	 */
 | 
			
		||||
	public boolean equals(Object obj) {
 | 
			
		||||
		// 内存地址
 | 
			
		||||
		if (this == obj) return true;
 | 
			
		||||
		if (obj == null || obj.getClass() != getClass()) return false;
 | 
			
		||||
		// if (obj == null || !(obj instanceof Person)) return false;
 | 
			
		||||
		
 | 
			
		||||
		// 比较成员变量
 | 
			
		||||
		Person person = (Person) obj;
 | 
			
		||||
		return person.age == age
 | 
			
		||||
				&& person.height == height
 | 
			
		||||
				&& (person.name == null ? name == null : person.name.equals(name));
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	@Override
 | 
			
		||||
	public int hashCode() {
 | 
			
		||||
		int hashCode = Integer.hashCode(age);
 | 
			
		||||
		hashCode = hashCode * 31 + Float.hashCode(height);
 | 
			
		||||
		hashCode = hashCode * 31 + (name != null ? name.hashCode() : 0);
 | 
			
		||||
		return hashCode;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@Override
 | 
			
		||||
	public int compareTo(Person o) {
 | 
			
		||||
		return age - o.age;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,10 @@
 | 
			
		||||
package com.mj.model;
 | 
			
		||||
 | 
			
		||||
public class Student extends Person {
 | 
			
		||||
 | 
			
		||||
	public Student(int age, float height, String name) {
 | 
			
		||||
		super(age, height, name);
 | 
			
		||||
		// TODO Auto-generated constructor stub
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,17 @@
 | 
			
		||||
package com.mj.model;
 | 
			
		||||
 | 
			
		||||
public class SubKey1 extends Key {
 | 
			
		||||
 | 
			
		||||
	public SubKey1(int value) {
 | 
			
		||||
		super(value);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	@Override
 | 
			
		||||
	public boolean equals(Object obj) {
 | 
			
		||||
		if (obj == this) return true;
 | 
			
		||||
		if (obj == null || 
 | 
			
		||||
				(obj.getClass() != SubKey1.class 
 | 
			
		||||
				&& obj.getClass() != SubKey2.class)) return false;
 | 
			
		||||
		return ((Key) obj).value == value;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,17 @@
 | 
			
		||||
package com.mj.model;
 | 
			
		||||
 | 
			
		||||
public class SubKey2 extends Key {
 | 
			
		||||
 | 
			
		||||
	public SubKey2(int value) {
 | 
			
		||||
		super(value);
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	@Override
 | 
			
		||||
	public boolean equals(Object obj) {
 | 
			
		||||
		if (obj == this) return true;
 | 
			
		||||
		if (obj == null || 
 | 
			
		||||
				(obj.getClass() != SubKey1.class 
 | 
			
		||||
				&& obj.getClass() != SubKey2.class)) return false;
 | 
			
		||||
		return ((Key) obj).value == value;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user