概述
1 class<T> 用于反射之中 表示一定要有一个类型(泛型)
1.1 实现接口时候,必须传入一个泛型
public interface Comparable<T> {
public boolean compareTo(T other);
}
Comparable 接口包含一个类型参数 T
public class String implements Comparable<String> {
public boolean compareTo(String other){
}
}
1.2 这里指定了两个比较的class类型必须一致
public T max(T t1, T t2) {
if (t1.compareTo(t2) > 0)
return t1;
else
return t2;
}
String s = max("moo", "bark");
1.3//Class<T>表示一个类名,T[] T数组的使用
public<T> T[] toArray(Class<T> returnType)
FooBar[] fba = something.toArray(FooBar.class);
1.4 //Class<T>表示一个类名
public interface BaseDao<T> {
T get();
}
public abstract class HibernateBaseDao<T> implements BaseDao<T>{
private Class<T> entityClass;
}
public class EntityDao extends HibernateBaseDao<Entity> {
private Class<T> entityClass;
public T get() {
return entityClass.newInstance();
}
}
2 Java使用多个参数
mul(int... list,int a) 是错误的,但是mul(int a,int... list)就是正确的。
//
public int mul(int a,int b){
return a * b;
}
public int mul(int a,int b,int c){
return a * b * c;
}
//不定数目的参数
public int mul(int... list){
int result = 0;
for (int num:list){
result *= num;
}
return result;
}
最后
以上就是欣慰啤酒为你收集整理的Class<T> 和 函数使用不定数目的参数的全部内容,希望文章能够帮你解决Class<T> 和 函数使用不定数目的参数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复