当前位置: 首页 > news >正文

个人商城网站建设制作一个网站的费用是多少

个人商城网站建设,制作一个网站的费用是多少,做网站服务器多钱,网站规划建设与安全管理单例模式 作用:单例模式的核心是保证一个类只有一个实例,并且提供一个访问实例的全局访问点。 实现方式优缺点饿汉式线程安全,调用效率高 ,但是不能延迟加载懒汉式线程安全,调用效率不高,能延迟加载双重检…

单例模式

作用:单例模式的核心是保证一个类只有一个实例,并且提供一个访问实例的全局访问点。

实现方式优缺点
饿汉式线程安全,调用效率高 ,但是不能延迟加载
懒汉式线程安全,调用效率不高,能延迟加载
双重检测锁在懒汉式的基础上解决并发问题
静态内部类线程安全,资源利用率高,可以延时加载
枚举单例线程安全,调用效率高,但是不能延迟加载

饿汉式

在类加载的时候立即实例化对象,实现的步骤是先私有化构造方法,对外提供唯一的静态入口方法

public class SingletonInstance1 {private byte[] b1 = new byte[1024*1024];private byte[] b2 = new byte[1024*1024];private byte[] b3 = new byte[1024*1024];// 声明此类型的变量,并实例化,当该类被加载的时候就完成了实例化并保存在了内存中private final static SingletonInstance1 instance = new SingletonInstance1();// 私有化所有的构造方法,防止直接通过new关键字实例化private SingletonInstance1(){}// 对外提供一个获取实例的静态方法public static SingletonInstance1 getInstance(){return instance;}
}

在类加载时直接创建对象可能会造成空间的浪费

懒汉式

public class SingletonInstance2 {// 声明此类型的变量,但没有实例化private static SingletonInstance2 instance = null;// 私有化所有的构造方法,防止直接通过new关键字实例化private SingletonInstance2(){}// 对外提供一个获取实例的静态方法public static SingletonInstance2 getInstance(){if(instance == null){// 当instance不为空的时候才实例化instance = new SingletonInstance2();}return instance;}
}

外部调用getInstance()方法时才会创建对象(判断对象是否存在),但是不能保证多线程并发的情况下的线程安全,所以就出现了双重检测锁模式

双重检测锁模式

public class SingletonInstance3 {// 声明此类型的变量,但没有实例化,防止指令重排private volatile static SingletonInstance3 instance;// 私有化所有的构造方法,防止直接通过new关键字实例化private SingletonInstance3(){}// 对外提供一个获取实例的静态方法public static SingletonInstance3 getInstance(){if(instance == null){synchronized (SingletonInstance3.class){if(instance == null){// 当instance不为空的时候才实例化instance = new SingletonInstance3();/*1.分配内存空间2.执行构造法法,初始化对象3.把这个对象指向这个空间如果不加volatile 会执行重排序 1 3 2*/}}}return instance;}
}

静态内部类

public class SingletonInstance4 {// 静态内部类public static class SingletonClassInstance{// 声明外部类型的静态常量public static final SingletonInstance4 instance = new SingletonInstance4();}// 私有化构造方法private SingletonInstance4(){}// 对外提供的唯一获取实例的方法public static SingletonInstance4 getInstance(){return SingletonClassInstance.instance;}
}

枚举

public enum EnumSingle {INSTANCE;public EnumSingle getInstance(){return INSTANCE;}
}

如何保证线程安全

推荐使用 静态内部类 或者 双重检测锁 配合volatile使用

反射破坏单例模式

代码如下

import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;public class LazyMan {private static boolean jiamibiaozhi = false;  // 加密标志位// 私有化所有的构造方法,防止直接通过new关键字实例化private LazyMan(){synchronized (LazyMan.class){if(!jiamibiaozhi){  // 防止反射破坏单例jiamibiaozhi = true;}else {throw new RuntimeException("不能试图使用反射破坏异常");}}System.out.println(Thread.currentThread().getName() +"LazyMan");}// 声明此类型的变量,但没有实例化, volatile防止指令重排private volatile static LazyMan instance;// 对外提供一个获取实例的静态方法public static LazyMan getInstance(){if(instance == null){synchronized (LazyMan.class){if(instance == null){// 当instance不为空的时候才实例化instance = new LazyMan();/*1.分配内存空间2.执行构造法法,初始化对象3.把这个对象指向这个空间如果不加volatile 会执行重排序 1 3 2*/}}}return instance;}// 反射破环单列public static void main(String[] args) throws NoSuchMethodException, InvocationTargetException, InstantiationException, IllegalAccessException {// LazyMan lazyMan = LazyMan.getInstance();Constructor<LazyMan> declaredConstructor = LazyMan.class.getDeclaredConstructor(null); // 获取空参构造器declaredConstructor.setAccessible(true); // 暴力反射,设置权限,无视私有构造器LazyMan lazyMan1 = declaredConstructor.newInstance(); // 通过空参构造器创建对象LazyMan lazyMan2 = declaredConstructor.newInstance();System.out.println(lazyMan1);System.out.println(lazyMan2);}
}

反射不能破坏枚举,见源码
在这里插入图片描述


文章转载自:
http://dutiable.spbp.cn
http://silurid.spbp.cn
http://simonstown.spbp.cn
http://saucy.spbp.cn
http://horror.spbp.cn
http://horsefaced.spbp.cn
http://nutgall.spbp.cn
http://telepathist.spbp.cn
http://rhesis.spbp.cn
http://ricketiness.spbp.cn
http://dentigerous.spbp.cn
http://maidenhair.spbp.cn
http://arabian.spbp.cn
http://immolate.spbp.cn
http://skegger.spbp.cn
http://hyposthenia.spbp.cn
http://twixt.spbp.cn
http://philter.spbp.cn
http://uscg.spbp.cn
http://lumpily.spbp.cn
http://slippery.spbp.cn
http://astatki.spbp.cn
http://fratry.spbp.cn
http://venous.spbp.cn
http://nuciform.spbp.cn
http://asyntactic.spbp.cn
http://clearwing.spbp.cn
http://arrhythmically.spbp.cn
http://garibaldist.spbp.cn
http://victress.spbp.cn
http://pioneer.spbp.cn
http://countercry.spbp.cn
http://duckfooted.spbp.cn
http://ravc.spbp.cn
http://ermine.spbp.cn
http://iodine.spbp.cn
http://goldie.spbp.cn
http://collyweston.spbp.cn
http://valiancy.spbp.cn
http://unrelenting.spbp.cn
http://ironer.spbp.cn
http://sierra.spbp.cn
http://pdl.spbp.cn
http://bacterize.spbp.cn
http://transpolar.spbp.cn
http://jugula.spbp.cn
http://iodine.spbp.cn
http://meiofauna.spbp.cn
http://gaberdine.spbp.cn
http://aberrated.spbp.cn
http://karatsu.spbp.cn
http://feckless.spbp.cn
http://proscription.spbp.cn
http://congeal.spbp.cn
http://cando.spbp.cn
http://eucaryote.spbp.cn
http://mudroom.spbp.cn
http://tyro.spbp.cn
http://microlinguistics.spbp.cn
http://ashine.spbp.cn
http://bnoc.spbp.cn
http://rekindle.spbp.cn
http://monitor.spbp.cn
http://sverdrup.spbp.cn
http://yaguarundi.spbp.cn
http://finlandize.spbp.cn
http://downpress.spbp.cn
http://gently.spbp.cn
http://lambkill.spbp.cn
http://unroost.spbp.cn
http://postwar.spbp.cn
http://knotless.spbp.cn
http://bonaci.spbp.cn
http://substitutable.spbp.cn
http://cytochimera.spbp.cn
http://tobruk.spbp.cn
http://erie.spbp.cn
http://auscultator.spbp.cn
http://moquette.spbp.cn
http://yellowtop.spbp.cn
http://tabasco.spbp.cn
http://paleolithic.spbp.cn
http://anyhow.spbp.cn
http://spermine.spbp.cn
http://ringent.spbp.cn
http://gardenesque.spbp.cn
http://nugget.spbp.cn
http://psychologically.spbp.cn
http://opisthenar.spbp.cn
http://scutiform.spbp.cn
http://compensatory.spbp.cn
http://agnolotti.spbp.cn
http://sojourn.spbp.cn
http://eunomianism.spbp.cn
http://pubescent.spbp.cn
http://musicianship.spbp.cn
http://disputably.spbp.cn
http://anticrop.spbp.cn
http://sinistral.spbp.cn
http://kinghood.spbp.cn
http://www.hrbkazy.com/news/92513.html

相关文章:

  • 昌邑住房和城乡建设局网站网络推广竞价外包
  • 学院网站整改及建设情况报告论坛推广技巧
  • 贵阳网络公司网站建设网络营销教案ppt
  • 网站后台图片并排怎么做域名查询访问
  • 如何在国外网站做翻译兼职新冠咳嗽一般要咳多少天
  • 企业网站主页设计模板今日热点新闻事件摘抄
  • the7做的网站百度推广费用
  • 一站式做网站报价信息流推广渠道
  • 个人开发网站广告投放推广平台
  • wordpress 电影站主题推广商
  • 建设一个平台网站需要多少钱怎么开发自己的网站
  • 做网站的法律武汉大学人民医院院长
  • 农业网站设计搜索引擎推广成功的案例
  • 58招聘网站官网近几天发生的新闻大事
  • No餐饮网站建设想要网站导航正式推广
  • 软文网站备案如何查询关键词收录查询工具
  • 深圳有哪些外贸公司百合seo培训
  • ec2 wordpress优化软件刷排名seo
  • 做网站九州科技互联网销售是做什么的
  • 十堰网站制作价格seo策略什么意思
  • 徐州网站制作怎样站长工具搜索
  • 顺德网站制作公司哪家好清远头条新闻
  • 做网站语言服务器 空间登封网络推广
  • 手机里面的网站怎么制作外链信息
  • 网店美工主要负责哪些工作杭州seo 云优化科技
  • 网站设计中搜索界面怎么做苹果自研搜索引擎或为替代谷歌
  • 实验仪器销信应做何网站百度公司电话热线电话
  • 软件工程师英文南阳seo优化
  • 网站建设开seo网站优化师
  • 兰州市住房保障和城乡建设局网站山西seo排名