A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 12560zhang 中级黑马   /  2014-3-4 08:37  /  633 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. public class GenericDemo {
  2.          
  3.         public static void main(String[] args) {
  4.                 Demo<String> d=new Demo<String>();
  5.                 d.show("adsf");
  6.                
  7.                 d.print(5);
  8.                 d.print("asd");               
  9.                
  10.                 d.method(5);
  11.                 Demo.method(6);       
  12.                 }
  13. }
  14. class Demo<T>{
  15.         public void show(T t){
  16.                 System.out.println("show:"+t);
  17.         }
  18.         public <Q> void print(Q q){
  19.                 System.out.println("print:"+q);
  20.         }
  21.         public static <W> void method(W t){
  22.                 System.out.println("method:"+t);
  23.         }
  24. }
复制代码


d.method()和Demo.method()有区别吗,

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

1 个回复

倒序浏览
是关于泛型问题,还是静态方法调用的问题啊?
method()前面有修饰符static是个静态方法可以通过类名直接调用。如果前面没有static,那只能通过对象来调用d.method().

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马