这篇文章主要介绍了Android面试Intent采用的设计模式是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Android面试Intent采用的设计模式是什么文章都会有所收获,下面我们一起来看看吧。答案是采用了原型模式原型模式的好处在于方便地拷贝某个实例的属性进行使用、又不会对原实例造成影响,其逻辑在于对 Cloneable
接口的实现。可以看到 Intent
实现的 clone()
逻辑是直接调用了 new 并传入了自身实例,而非调用 super.clone() 进行拷贝。默认的拷贝策略是 COPY_MODE_ALL
,顾名思义,将完整拷贝源实例的所有属性进行构造。其他的拷贝策略是 COPY_MODE_FILTER
指的是只拷贝跟 Intent-filter 相关的属性,即用来判断启动目标组件的 action、data、type、component、category 等必备信息。不需要 bundle 等历史数据,保留 action 等基本信息和启动 flag 等数据。总结起来:除免费云主机域名了 Intent
,Android 源码中还有很多地方采用了原型模式。Bundle
也实现了 clone(),提供了 new Bundle(this) 的处理:组件信息类 ComponentName
也在 clone() 中提供了类似的实现:工具类 IntArray
亦是如此:原型模式也不一定非得实现 Cloneable,提供了类似的实现即可。比如:Bitmap
没有实现该接口但提供了 copy()
,内部将传递原始 Bitmap 在 native 中的对象指针并伴随目标配置进行新实例的创建:关于“Android面试Intent采用的设计模式是什么”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Android面试Intent采用的设计模式是什么”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注百云主机行业资讯频道。
相关推荐: 微信小程序中image组件binderror怎么使用
这篇文章主要介绍“微信小程序中image组件binderror怎么使用”的相关知识,小编通过实际案例免费云主机域名向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序中image组件binderror怎么使用”文章能帮助大家解决问题。微信小程序…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。