黑马程序员技术交流社区

标题: 新手求问<关于泛型, 的定义问题 [打印本页]

作者: 波-wang    时间: 2014-10-3 19:47
标题: 新手求问<关于泛型, 的定义问题
本帖最后由 波-wang 于 2014-10-3 22:30 编辑
  1. package collections;

  2. import java.util.AbstractSequentialList;
  3. import java.util.LinkedList;
  4. import java.util.ListIterator;

  5. public class Mystack<T> extends AbstractSequentialList<T> {

  6.         private LinkedList<T> link;

  7.         public Mystack() {        // →这儿为什么不能写成public Mystack<T>() {   
  8.                 this.link = new LinkedList<T>();
  9.         }
  10.         public boolean add(T t){
  11.                 return link.add(t);        
  12.         }
  13.         public T get(){
  14.                 return link.getFirst();
  15.         }
  16.         @Override
  17.         public ListIterator<T> listIterator(int index) {
  18.                 return link.listIterator();
  19.         }
  20.         @Override
  21.         public int size() {
  22.                 return link.size();
  23.         }
  24. }
复制代码
这里的泛型为什么不可以加载无参的构造方法上呢?

作者: 水竹    时间: 2014-10-3 20:06
泛型什么时候可以写在方法名上了,都是顶的数据类型的位置啊。再说无参构造方法一没有参数,二没有返回值,加上泛型算什么意思?
作者: 鲁行    时间: 2014-10-3 21:41
当泛型定义在方法上时,要注意:泛型只能放在修饰符的后面,返回值类型的前面.而我们知道构造方法是没有返回值类型的.所以泛型不能定义在构造方法上.
作者: 波-wang    时间: 2014-10-3 22:15
鲁行 发表于 2014-10-3 21:41
当泛型定义在方法上时,要注意:泛型只能放在修饰符的后面,返回值类型的前面.而我们知道构造方法是没有返回值 ...

恩  ,好型是的   ,解决问题:)




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2