请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师您好,父类加载器和父类不是同一个概念不太清晰

老师您好,父类加载器和父类不是同一个概念不太清晰,Android程序的双亲委派模型图中,BootClassLoader是PathClassLoader的父类加载器,DexClassLoader的父类加载器是PathClassLoader,但是类图中BootClassLoader和BaseDexClassLoader都是ClassLoader的子类,是平级关系,而PathClassLoader和DexClassLoader是BaseDexClassLoader的子类,这样理解PathClassLoader和DexClassLoader的父类加载器就是BaseDexClassLoader,和BootClassLoader没什么关系了,能帮忙分析一下吗

正在回答 回答被采纳积分+3

1回答

Vincent文森 2022-03-04 09:01:01

同学你好,父子类,指的是类之间关系是继承,继承的目的是复用代码逻辑。父子classloader,指的是类之间的关系是组合,让实例(不是类)形成一个单向的依赖关系,让子classloader持有一个另一个classloader的实例,以便向上委派。类图和双亲委派模型之间是没有关联的,类图只是为了说明类之间的静态结构关系,而双亲委派模型,可以理解为是一种运行时建立的,实例(不是类)之间的组合关系PathClassLoader和DexClassLoader的父类加载器就是BaseDexClassLoader”这句话是不正确的,应该是PathClassLoader和DexClassLoader的父类是BaseDexClassLoader”,而“PathClassLoader的父classLoader是BootClassLoader”。

1 回复 有任何疑惑可以回复我~
  • 举个例子,拿Android中父View和父类。
    LinearLayout、TextView这些都是继承的View,他们的父类都是View,也就是他们都是View。
    而如果LinearLayout中有一个TextView,虽然LinearLayout和TextView都是View,但是TextView的父View就是LinearLayout
    回复 有任何疑惑可以回复我~ 2023-04-13 19:46:11
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信