?参数化类型与原始类型的兼容性: ?参数化类型可以引用一个原始类型的对象,编译时编译器会报警告,例如:Collection<String> c = new Vector();
?原始类型可以引用一个参数化类型的对象,编译时编译器会报警告,例如:Collection c = new Vector<String>();
?参数化类型不考虑类型参数的继承关系: ?Vector<String> v = new Vector<Object>();//错误,语法上不通过
?Vector<Object> v = new Vector<String>();//错误,语法上不通过
假设Vector<String> v = new Vector<Object>;可以的话,那么以后从v中取出的对象当作String用,而v实际指向的集合中可以加入任意类型的对象,
假设Vector< Object > v = new Vector< String >;可以的话,那么以后可以向v中加入任意类型的对象,而v实际指向的集合中只能装String类型的对象
思考:下面的代码会报错吗?(不会报错)
?Vector v1 = new Vector<String>();//参数化类型的对象可以给原始类型的引用
?Vector<Object> v=v1;//参数化类型的引用可以指向原始类型的对象