当前位置:操作系统 > 安卓/Android >>

AudioFlinger 的一个小问题

AudioFlinger 类开始的时候定义了
 
friend class BinderService<AudioFlinger>,为啥要定义一个这个呢,后面有个注视 
 
// for AudioFlinger()
 
原来binderservice初始化的时候会new AudioFlinger出来,而audioflinger的构造函数的private,友元类就可以使用当前类的private方法了
 
来说说为啥要把构造函数设成private的
 
我觉得
 
1 是实现单例的好的方法
 
  构造函数是private,所以不能被构造对象,不能再栈上使用这个对象,类必须提供static 方法来使得外部能够得到这个对象,非常的像单例模式
 
2 可以控制构造和析构
 
   增加了新的接口 可以保证在初始化类之前和之后完成一些其他的操作
 
暂时想到这么多。
 
这样就知道了
 
在binder service中还可以用SERVICE::getInstance()来构造这个函数,当然需要增加新的接口
 
 
 
补充:移动开发 , Android ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,