java泛型2

下面的使用方法类似于C++的类模板

所谓的泛型 就是定义接口 类 方法使用类型形参  类型形参在声明变量 创建对象 调用方法时 动态的指定

package fanxing;

import java.util.Iterator;

//类 接口定义了一个类型形参  相当于类模板 
class Apple<t>
{
 t aa;
 public Apple(t aa)
 {
  this.aa=aa;
 }
 t get()
 {
  return aa;
 }
 //Iterator<t>iterator()   方法的返回类型
 
}
public class shenru {
 public static void main(String args[])
 {
  Apple <String>fei=new Apple<String>("hhh");
 }

}

 

从泛型类派生子类   不能再跟类型形参需要指定类型形参

例:public class A extends Apple<t>错误  应指定string int什么的

 

用法  定义方法 类接口时用类型形参  使用时传入类型形参  上例属于使用

 

不同的是使用类 接口时 可以不为类型传入实际的参数,下面也正确 public class a extends Apple

 并不存在泛型类 不管泛型的实际类型是什么他们在运行时总有同样的类

你可能感兴趣的:(java泛型2)