为了账号安全,请及时绑定邮箱和手机立即绑定

多态的问题

多态的问题

qq__4348 2016-04-07 10:56:11
为什么要父类引用指向子类对象而不直接子类引用指向子类对象? 这样的话子类的引用既可以用子类方法又可以用父类方法而父类的引用只能用父类的方法
查看完整描述

2 回答

已采纳
?
Mopel

TA贡献12条经验 获得超4个赞

就我遇到的开发中的应用场景,用到多态的地方主要有以下几个

  1. 在控制层中,开发时首先定义的是接口方法,这样就无需在知道后台服务和本地缓存的具体实现细节的情况下进行开发.同时根据不同的数据来源(缓存,数据库,网络)都是有用同一套接口方法,也方便后期的代码更换,不用查找替换所有类的引用,只用切换类的依赖实现就行了.

  2. 方便用工厂模式产生子类,例如DialogFragment,就经常应用工厂方法来产生,这时返回父类形式的子类对象,在代码书写上更快,更方便

查看完整回答
反对 回复 2016-04-07
?
HansonQ

TA贡献223条经验 获得超56个赞

那要是父类是一个接口,那不更加方便。

Map<String,Object> map =  new HashMap<String,Object>();
这个在后期开发的时候用的太多了,一般都是 提供一个接口,在提供一个实现类。接口对外暴露,这样的话调用接口的人就不会知道实现细节。


查看完整回答
反对 回复 2016-04-07
  • qq__4348
    qq__4348
    这样的话调用接口的人就不会知道实现细节 这句话的意思是防止什么?
  • HansonQ
    HansonQ
    有一个叫面向接口编程的概念需要了解,还有就是只给接口肯定提高了代码的安全性。现在很多公司都会对源码进行加密操作的。
  • 2 回答
  • 0 关注
  • 1442 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信