A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zhangchao 中级黑马   /  2014-2-10 12:03  /  1176 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在学习毕老师的java视频中,讲解通常情况下会使用“饿汉式”,我在学习android源码的时候发现,大多使用的都是加入线程安全的“懒汉式”,不知道出于何种考虑?有知道的给指导一二,谢过

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 赞一个!

查看全部评分

5 个回复

倒序浏览
饿汉式是线程安全的,在类创建的同时就已经创建好一个静态的对象供系统使用,以后不在改变
懒汉式如果在创建实例对象时不加上synchronized则会导致对对象的访问不是线程安全的
推荐使用第一种

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1

查看全部评分

回复 使用道具 举报
饿汉式是线程安全的,只要程序运行就实例化。懒汉式是非安全的线程,所以用的时候要加锁,但是它的效率高,需要用到的时候才实例化。

评分

参与人数 1技术分 +1 收起 理由
袁梦希 + 1 很给力!

查看全部评分

回复 使用道具 举报
涉及到效率问题,我就明白了,多谢各位的回复
回复 使用道具 举报
继续努力   继续提问
回复 使用道具 举报
个人感觉主要在两种模式的区别上,饿汉式直接创建了实例对象供其他人使用,而懒汉式是在要用的时候才调用的。这个是为了避免资源浪费?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马