若有m是泛型方法, 永远不能这样吗: <String>m(), 即前后什么都没有.写个例子吧.
Java code
class test {
  <T> void m(){}; //泛型方法  void test() {
    <String>m(); //像这样, 编译错误.    test t = new test();
    t.<String>m();  //这样就可以.
  }
}

解决方案 »

  1.   

    这样是可以的……<T> void m(){};public void test() {
    this.<String>m();
    }
      

  2.   

    泛型其一是为了解决安全问题。
    public class Test
    {
      public static void main(String []args)
     {
         List<Test> t = new ArrayList<Test>(); //泛型处理类
          for(Test t: t)
          {
              System.out.println(t);//类型自动转换
          }   
         //非泛型处理 需要强制转换
         List t = new ArrayList();
        for(int i=0; i<t.size(); i++) 
        {
          Test t = (Test)l.get(i); //类型不安全转换
        }
     }
    }2、其二泛形可以让类更灵活。创造模板化编程。泛形方法,泛形类 形成编译期错误提示static<T> void test(T t) //编译时织入类型,编译期验证类型关于你上面的那个方法。为什么不能<String>m();那是因为在调用泛型类的时,因为你是在当前类中的方法里调用,必须要依赖与当前类实例。泛型在推断的时候要先有实例。相当于选创建这个模板。然后你放入参数时。进行“类型参数推断”来找到你织入的参数。