我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

java设计模式的懒汉式怎么实现-创新互联

这篇文章主要介绍“java设计模式的懒汉式怎么实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“java设计模式的懒汉式怎么实现”文章能帮助大家解决问题。

成都创新互联公司成立与2013年,先为阿拉尔等服务建站,阿拉尔等地企业,进行企业商务咨询服务。为阿拉尔企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
//懒汉式
private static readonly object obj = new object();
        private static DbConnection dbConnection;
        private DbConnection()
        {
        }
        public static DbConnection getDbConnection()
        {
            if (dbConnection == null)
            {
                lock (obj)
                {
                    if (dbConnection == null)
                    {
                        dbConnection = new DbConnection();
                    }
                }
            }            
            return dbConnection;
        }
        public void openConnection()
        {
            Console.WriteLine("开启数据库连接");
        }

        //饿汉式
        private static readonly DbConnection dbConnection = new DbConnection();
        private DbConnection()
        { }
        public static DbConnection getDbConnection()
        {
            return dbConnection;
        }
        public void openConnection()
        {
            Console.WriteLine("开启数据库连接");
        }
                //懒汉式
            //DbConnection dbConnection= DbConnection.getDbConnection();
            //DbConnection dbConnection2 = DbConnection.getDbConnection();
            //dbConnection.openConnection();
            //if (dbConnection == dbConnection2)
            //{
            //    Console.WriteLine("相同的");
            //}
            //Console.ReadLine();
            //饿汉式
            DbConnection dbConnection = DbConnection.getDbConnection();
            DbConnection dbConnection2 = DbConnection.getDbConnection();
            if (dbConnection == dbConnection2)
            {
                Console.WriteLine("相同的");
            }
            Console.ReadLine();

总结:保证类只有一个实例(自己完成自己的实例化),并且 提供一个全局访问点。
懒汉式:在第一次被引用的时候实例化,不提前占资源,但需要双重锁保证线程安全。
饿汉式:被加载时实例化,需要提前占用资源。

与静态方法区别:
1、静态方法里面的对象使用过后会释放,频繁使用释放也耗资源;单例由于有一个实例化,会一直存在。
2、单例可以继承类,实现接口,方法可以被重载。
3、单例比静态方法更灵活。
java设计模式的懒汉式怎么实现

关于“java设计模式的懒汉式怎么实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注创新互联网站制作公司行业资讯频道,小编每天都会为大家更新不同的知识点。

创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。


名称栏目:java设计模式的懒汉式怎么实现-创新互联
本文地址:http://shouzuofang.com/article/cdjehe.html

其他资讯