Java 泛型之容易类型的多参数类型

Java 泛型之简单类型的多参数类型
package com.study.generics;

/**
 * 简单泛型之两个参数类型
 * @author Administrator
 * @description 泛型类的定义时,不能在同一包中指定两个同名的泛型类名
 * @param <K>
 * @param <V>
 */
class GenericsClassTwo<K,V> {
	private K key;
	private V value;
	
	public K getKey() {
		return key;
	}
	public void setKey(K key) {
		this.key = key;
	}
	public V getValue() {
		return value;
	}
	public void setValue(V value) {
		this.value = value;
	}
	
	/**
	 * 泛型中重写toString不起作用,为什么
	 */
	public String toString() {
		return ("泛型的键值为键:"+this.key + " 泛型的键值的值为"+this.value);
	}
	
}
public class GenericsDemo02 {
	public static void main(String []args) {
		//泛型的比较大小,也是按照键对的形式进行比较,如果键值名称相等则先前的值擦除。
		//比较也是按照Object类的equals和hashCode方法比较。自定义类可以使用Compareable类的compareTo() 方法排序,此排序使用哈希表排序
		//以上结论为什么在泛型中不起作用。
		//因为泛型是参数化类型,把每一个传递过去的参数都看作参数化。(备注,网上搜索资料)
		GenericsClassTwo<String,Integer> twoGenerics= new GenericsClassTwo<String,Integer>();
		twoGenerics.setKey("1");
		twoGenerics.setValue(100);
		System.out.println("泛型的键为:"+twoGenerics.getKey());
		System.out.println("泛型的值为:"+twoGenerics.getValue());
		twoGenerics.setKey("1");
		twoGenerics.setValue(100);
		System.out.println("泛型的键为:"+twoGenerics.getKey());
		System.out.println("泛型的值为:"+twoGenerics.getValue());
		
		
		GenericsClassTwo<String,Float> twoGenerics1= new GenericsClassTwo<String,Float>();
		twoGenerics1.setKey("1");
		twoGenerics1.setValue(339.33f);
		System.out.println("泛型的键为:"+twoGenerics1.getKey());
		System.out.println("泛型的值为:"+twoGenerics1.getValue());
	}
}
 
1 楼 zuishengmengsi1990 2012-04-10  
Java 泛型之容易类型的多参数类型