weixin_47257038 2022-08-02 23:25 采纳率: 33.3%
浏览 28

泛型在继承方面的体现,求解答

    public static void Show(List<Object> c) {
        for (Object e : c) {
            System.out.println(e);
        }
    }
    public static void main(String[] args) {
        List<Object> list = null;
        List<String> list1 = null;
        list = list1;//编译不通过,因为list1不是list的子类
        Show(list);//编译通过
        Show(list1);//编译不通过
    }

但是将Show()方法的static关键字去掉后采用对象来调用Show(),结果就都能通过

    public void Show(List<Object> c) {
        for (Object e : c) {
            System.out.println(e);
        }
    }
    public static void main(String[] args) {

        Exercise e = new Exercise();
        List<Object> list = null;
        List<String> list1 = null;
        e.Show(list);//编译通过,能够正常打印
        e.Show(list1);//编译也能通过,也能正常打印
    }

为什么通过对象调用Show()就感觉泛型能转换:

  • 写回答

2条回答 默认 最新

  • 於黾 2022-08-03 08:05
    关注

    因为静态函数不会继承

    评论

报告相同问题?

问题事件

  • 创建了问题 8月2日

悬赏问题

  • ¥15 matlab数据降噪处理,提高数据的可信度,确保峰值信号的不损失?
  • ¥15 怎么看我在bios每次修改的日志
  • ¥15 python+mysql图书管理系统
  • ¥15 Questasim Error: (vcom-13)
  • ¥15 船舶旋回实验matlab
  • ¥30 SQL 数组,游标,递归覆盖原值
  • ¥15 为什么我的数据接收的那么慢呀有没有完整的 hal 库并 代码呀有的话能不能发我一份并且我用 printf 函数显示处理之后的数据,用 debug 就不能运行了呢
  • ¥20 gitlab 中文路径,无法下载
  • ¥15 用动态规划算法均分纸牌
  • ¥30 udp socket,bind 0.0.0.0 ,如何自动选取用户访问的服务器IP来回复数据