抽象出Component<T>组件，将获取泛型参数T的实际类型的代码放到该类中