新手问个关于JAVA中多态的关于向上转型的问题

小鱼儿咕噜咕噜 2009-08-12 02:40:34
先前也问过一个差不多的帖子,但是回贴都是反复强调多态啊什么的 都没真正解我的惑,

Set <Integer> intset = new HashSet <Integer>()

Set是个接口,为什么对接口建立对象引用而“映射”的却是对类HashSet的构造?

书中说是为了安全,确实,intset无法访问HashSet中Set没有的方法,但是这样有用吗?有没有访问是程序员的事情啊!!!
书中大部分都是这样的构造,不知道这样有什么好处啊?我看向上转型中没这个例子啊? 悟性不行罗...
我猜想的话:是不是intset还可以访问除HashSet外的别的类的方法才这样的还是???
各位前辈指点下新手小弟,现在这个问题已经让我没法继续在书中前行了....
...全文
98 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
不要回贴,这个帖子我会删除,我上面有个相同的
捏造的信仰 2009-08-12
  • 打赏
  • 举报
回复
因为 Set 没有构造方法。要构造一个 Set 对象,必须指定使用它的某个子类来构造。
  • 打赏
  • 举报
回复
不要回贴,这个帖子我会删除,我上面有个相同的

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧