作者pttworld (批踢踢世界)
看板java
标题Re: [问题] 关於泛型 资料型态的疑问
时间Wed May 27 17:11:32 2015
※ 引述《noapaov (单身汉)》之铭言:
: 请问一下各位大大关於泛型操作上的问题,
: ParentList p = new ChildList();
: 这段code 代表变数p可以呼叫parentList的所有成员, 而执行的时候是呼叫childList.test()实体
: 但我在使用泛型的时候, 假设我使用如下
: ArrayList obj = new ArrayList<Integer>();
: 其实等同 ArrayList<Object> obj = new ArrayList<Integer>();
: 表示我可以加入任何的物件到obj里面, 问题来了, 我所产生的物件<T>是Integer
: 编译器没有报错我的理解是因为我宣告的是ArrayList<Object> obj,
: 但为什麽我在 "执行" obj.add("test"); 加入字串时, 运行时也不会有问题
: 甚至我在执行obj.get(0), 他印出的还是"test", 而不是数字 ?
Object o = "test";
System.out.println(o);
System.out.println(o.toString());
and keyword Polymorphism
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.248.172.93
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1432717894.A.EB0.html
1F:推 noapaov: 可能误解我的问题, 我想问我的加入的元素是字串, 05/27 17:32
2F:→ noapaov: 但我实体的物件泛型类型是Integer, 确在执行时没有报错 05/27 17:33
3F:→ noapaov: 可能我写的不太清楚 05/27 17:33
Polymorphism
maybe plus a keyword: Inherit
※ 编辑: pttworld (111.248.172.93), 05/27/2015 17:39:45