在写这篇文章之前,xxx已经写过了几篇关于改声明方法主题的文章,想要了解的朋友可以去翻一下之前的文章
1.Map<K,V> 声明的泛型类型必须是类,不能是基本类型。如果是基本类型将其写为对应的对象类型。
2.Map<k,v> map=new LinkedHashMap<k,v>();
当双方都有泛型时,那么这两个泛型就必须雷同。
轻易出错的地方,如:
List<Object>list=new ArrayList<String>();不可
List<String>list=new ArrayList<Object>();不可
3.也可以允许只有一边有泛型,另一边没有泛型。
Map map=new LinkedHashMap<k,v>();
Map<k,v> map=new LinkedHashMap();
3.泛型是给javac使用的,用于限定往集合中要添加的元素类型。但是当编译器完成对带有泛型的java程序后,生成的class文件中是不带有泛型信息的,这个进程称之为“擦除”。这样可以避免影响程序运行的效率。 4.当自定义一个方法中带有多个泛型时,其声明的格式为:
Public <T,E,F> void method(T t,E e,F f){}
5.当一个方法为static时,那么这个静态方法就不能使用在类上声明的泛型,只能在自己的方法上进行泛型声明。
Class Demo<K>
{
Public static void method(K name){}//错误
Public static <T> void f1(T a){}
//注意在方法上声明泛型时,泛型涌现的位置应当紧挨在返回类型的前面。
}
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/110138.html原文链接:https://javaforall.cn