精华内容
下载资源
问答
  • 确保某一类只有一实例,而且自行实例化并向整个系统提供这实例,这类称为单例类,它提供全局访问的方法。单例模式是一种对象创建型模式。 单例模式有三要点:一是某个类只能有一实例;二是它必须自行...

    确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。单例模式是一种对象创建型模式。

    单例模式有三个要点:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。

    单例模式之——饿汉模式:当类被加载时,静态变量instance会被初始化,此时类的私有构造函数会被调用,单例类的唯
    一实例将被创建

    class EagerSingleton {
        
        private static final EagerSingleton instance = new EagerSingleton();
        
        private EagerSingleton() { }
        
        public static EagerSingleton getInstance() {
            return instance;
        }
    }

    单例模式之——懒汉模式:懒汉式单例在第一次调用getInstance()方法时实例化,在类加载时并不自行实例化,这种技术又称为延迟加载(Lazy Load)技术,即需要的时候再加载实例。

    class LazySingleton {
        
        private static LazySingleton instance = null;
    
        private LazySingleton() { }
    
        public static LazySingleton getInstance() {
    
            if (instance == null) {
                instance = new LazySingleton();
            }
            return instance;
        }
    }

    饿汉式单例类在类被加载时就将自己实例化,它的优点在于无须考虑多线程访问问题,可以确保实例的唯一性;从调用速度和反应时间角度来讲,由于单例对象一开始就得以创建,因此要优于懒汉式单例。但是无论系统在运行时是否需要使用该单例对象,由于在类加载时该对象就需要创建,因此从资源利用效率角度来讲,饿汉式单例不及懒汉式单例,而且在系统
    加载时由于需要创建饿汉式单例对象,加载时间可能会比较长。
    懒汉式单例类在第一次使用时创建,无须一直占用系统资源,实现了延迟加载,但是必须处理好多个线程同时访问的问题,特别是当单例类作为资源控制器,在实例化时必然涉及资源初始化,而资源初始化很有可能耗费大量时间,这意味着出现多线程同时首次引用此类的机率变得较大,需要通过双重检查锁定等机制进行控制,这将导致系统性能受到一定影响。

    双重检查锁定机制

    class LazySingleton {
    
        private volatile static LazySingleton instance = null;
    
        private LazySingleton() { }
    
        public static LazySingleton getInstance() {
            //第一重判断
            if (instance == null) {
                //锁定代码块
                synchronized (LazySingleton.class) {
                //第二重判断
                    if (instance == null) {
                        instance = new LazySingleton(); //创建单例实例
                    }
                }
            }
        return instance;
        }
    }

    如果使用双重检查锁定来实现懒汉式单例类,需要在静态成员变量instance之前增加修饰符volatile,被volatile修饰的成员变量可以确保多个线程都能够正确处理,且该代码只能在JDK 1.5及以上版本中才能正确执行。由于volatile关键字会屏蔽Java虚拟机所做的一些代码优化,可能会导致系统运行效率降低,因此即使使用双重检查锁定来实现单例模式也不是一种完美的实现方式

    IoDH(Initialization Demand Holder):

    //Initialization on Demand Holder
    class Singleton {
    
        private Singleton() {
        }
        
        private static class HolderClass {
            private final static Singleton instance = new Singleton();
        }
    
        public static Singleton getInstance() {
            return HolderClass.instance;
        }
    }

    使用IoDH,既可以实现延迟加载,又可以保证线程安全,不影响系统性能,不失为一种最好的Java语言单例模式实现方式(其缺点是与编程语言本身的特性相关,很多面向对象语言不支持IoDH)。

    1.主要优点
    (1) 单例模式提供了对唯一实例的受控访问。因为单例类封装了它的唯一实例,所以它可以严格控制客户怎样以及何时访问它。
    (2) 由于在系统内存中只存在一个对象,因此可以节约系统资源,对于一些需要频繁创建和销毁的对象单例模式无疑可以提高系统的性能。
    (3) 允许可变数目的实例。基于单例模式我们可以进行扩展,使用与单例控制相似的方法来获得指定个数的对象实例,既节省系统资源,又解决了单例单例对象共享过多有损性能的问题。
    2.主要缺点
    (1) 由于单例模式中没有抽象层,因此单例类的扩展有很大的困难
    (2) 单例类的职责过重,在一定程度上违背了“单一职责原则”。因为单例类既充当了工厂角色,提供了工厂方法,同时又充当了产品角色,包含一些业务方法,将产品的创建和产品的本身的功能融合到一起。
    (3) 现在很多面向对象语言(如Java、C#)的运行环境都提供了自动垃圾回收的技术,因此,如果实例化的共享对象长时间不被利用,系统会认为它是垃圾,会自动销毁并回收资源,下次利用时又将重新实例化,这将导致共享的单例对象状态的丢失。
    3.适用场景
    (1) 系统只需要一个实例对象,如系统要求提供一个唯一的序列号生成器或资源管理器,或者需要考虑资源消耗太大而只允许创建一个对象。
    (2) 客户调用类的单个实例只允许使用一个公共访问点,除了该公共访问点,不能通过其他途径访问该实例。

    展开全文
  • 这些建议可能看起来更像是常识。但是,随着我们越多的使用云服务,我们越是更多的将自己暴露于身份信息被盗以及其他网络犯罪等负面影响的危险之中...如下是六个方法,至少可以使您的数据不那么轻易的就被不法份子窃取。
  • 很多朋友电脑的WindowsXP Pro和Windows Vista或其他双系统运行一段时间后... 以上评价,没有丝毫水分和夸大,因为没有这必要。说是“秘笈”——“秘”尚勉强说得过去,因为全系经验之谈,一直未曾拿出来让方家评判;

    很多朋友电脑的WindowsXP Pro和Windows Vista或其他双系统运行一段时间后。总体感觉:系统稳定、运行流畅,在诸如“熊猫烧香”之类肆虐横行的时候,也幸免于难未受感染,平时也未受到过病毒、木马、恶意软件的侵害,没有出现过死机、黑屏、蓝屏等现象。   以上评价,没有丝毫水分和夸大,因为没有这个必要。说是“秘笈”——“秘”尚勉强说得过去,因为全系经验之谈,一直未曾拿出来让方家评判;“笈”则名不副实,以下文字“浅尝辄止”,只说了一些“什么”,而没有过多地涉及“怎么”和“为什么”,万望大家见谅。   其一,组装机一定要注意硬件配置合理   要做到电脑硬件配置的科学、合理,在进行组装前必须明了两个问题:第一,新电脑准备安装什么操作系统?须知:不同的操作系统,对硬件有不同的要求。假如没有满足操作系统的基本要求,这个承载软件运行的平台就不会发挥其最好的效能。第二,新电脑打算以运行哪些软件为主?应当清楚:“OFFICE”不同于“魔兽争霸”,“Photoshop CS”不同于“Virtual PC 2007”,这些都会涉及到一些硬件的相应配置。综合以上两个方面,从总体把握上还要特别注意遵循 “木桶原理”——力求各个硬件“去”长“补”短,搭配得配合默契、相得益彰。而不是“参差不齐、长短不一”,更不能相互掣肘、形成内耗。   其二,操作系统尽可能要选择“原版”   从某种意义上说,“原版”就是没有“正版密钥”的正版。“原版”是尚未集成诸如SP1、SP2补丁的最初级版本,也是最纯正、最标准、在此基础上集成补丁后运行最可靠、最流畅的版本。例如,WindowsXP Pro原版,从始至今,具有版本唯一性。在此基础上集成SP2,与正版WindowsXP Pro SP2无异。至于网上提供现成下载的精简版、破解版之类,是否保持了原版的完整性,运行起来与原版有什么差异,不是一两句话能说得清楚的。因此,笔者主张就是费些功夫,也要尽量下载原版,并在此基础上集成最高版本的原版补丁。这样,既学习掌握了一门操作知识,又亲手打造了自己的操作系统,何乐而不为呢?   其三,合理搭配安全防范软件至关重要   安全防范软件,就其功能而言,可以划分为四类:1。查杀病毒;2。查杀木马(反间谍);3。防火墙;4。查杀恶意软件。目前,不少公司为了争夺市场,安全防范软件均以“套装”形式出现,集多种功能于一身。笔者主张,只要是电脑资源允许,“四种类型”都应当安装,这符合当前网络世界的“大形势”。但是,不主张安装使用集多种功能于一身的“套装”,理由很简单:任何一个公司,都没有力量、没有精力,同时做到在“四个领域”都居于世界领先地位。这与系统自带的防火墙,极少有人使用是一个道理。至于选择原则和合理搭配,请参阅以下文章,在此不再赘述。     其四,下载安装软件一定要谨慎从事     关于下载常用软件,有专文评述(祥见——如何有选择地下载破解软件?),在此不再赘述。这里,想与大家共同探讨一下常用软件的“安装路径”问题。绝大多数软件,都有安装路径的选项;绝大多数人,又都把常用软件“默认”安装在了系统盘的Program Files 文件夹。这不仅影响各驱动盘的科学归类、便于管理,也会或多或少地影响系统和软件的启动或运行速度。Examda提示: 为什么不可以这样呢——系统盘就是系统盘,除了系统安装文件之外其它尽量不要。其它驱动盘,可根据自己情况,划分为资料盘、软件盘、休闲盘之类。在每个大分类之下,再细化若干小分类,这岂不是更好?     其五,对系统和软件的“设置”要讲科学   操作系统和浏览器等常用软件,都有“设置”选项。特别是操作系统,“设置”众多,且不易把握——诸如:输出/输入缓存、开始菜单速度、桌面图标缓存、二级数据高级缓存、传输单元缓冲等等。操作系统和常用软件的“设置”如果不科学,甚至胡“设”一气,轻者,会影响系统的稳定性和运行效率、运行流畅;重者,就会造成系统死机、蓝屏、黑屏等事故的发生。因此,对于初学者来说,系统“设置”——用可靠的优化软件自动完成;软件“设置”——采用默认选项。手动修改“设置”,一定要逐步摸索,循序渐进,切忌“毕其功于一役”。   其六,养成对电脑进行定期维护的好习惯   定期维护,包括硬件和软件两个方面。硬件,主要是精心清理灰尘、保证散热效果。如无特殊,一般不要频繁的“大拆大卸”。因为在拆卸之中,均有伤及元器件的潜在危险。元器件受到“硬伤”,修复相当困难。软件,主要是对Microsoft操作系统:一要定期清理垃圾,二要定期进行“查杀”。软件“定期”的频率,全靠自己的经验,没有“定规”可循。但是,只要经常使用电脑,经常浏览网页,这频率间隔最好不要超过半个月。否则,电脑运行速度会越来越慢,甚至已有木马时时窥视却浑然不觉。至于硬件,一年两次,大概就可以了。

    (责任编辑:admin)

    原文地址:http://www.adminso.com/articles/view/98718
    (站长搜索- http://www.adminso.com/yuanma -源码下载,更新快,最专业的网站源码下载!)

    展开全文
  • VoIP,六个步骤告诉你如何避免VoIP安全风险,Forrester公司在最近的研究中,推荐下述六个步骤来帮助IT组织避免VoIP安全风险并最终确保
  • 国企将采取哪些应对措施”时表示,今年国内外经济形势总体上看是稳中有变、变中有忧,企业市场经营的压力很大,2019年的工作要用“六个强化”的措施来确保实现国企效益的稳步增长。资料图:生产车间作业中。中新社...

    中新网1月17日电 国资委新闻发言人彭华岗今日在回应“2019中国经济将面临较大的压力,国企将采取哪些应对措施”时表示,今年国内外经济形势总体上看是稳中有变、变中有忧,企业市场经营的压力很大,2019年的工作要用“六个强化”的措施来确保实现国企效益的稳步增长。

    2019年如何确保国企效益增长?国资委明确这六项措施

    资料图:生产车间作业中。中新社记者 张斌 摄

    国务院新闻办今日上午举行新闻发布会,会上有记者问“不少研究机构预测,2019年中国经济将面临较大的压力,经济增长速度将会进一步放缓。对此,请问国有企业将采取哪些应对措施,央企效益增速是否会放缓呢?”国资委秘书长、新闻发言人彭华岗对此做出如上回应。

    彭华岗从两个方面对复杂多变的形势进行了分析,一方面是要把困难和问题想得更充分一些,把措施和预案准备得更充足一些,做好迎难而上的准备。另一方面,也要看到中经济发展仍然处于重要的战略机遇期,要坚定战略自信,保持战略定力,牢牢把握新时代经济发展的阶段性特征,抓住一切有利条件,调动一切积极因素,把国资国企改革发展事业不断向前推进。

    彭华岗介绍,对于2019年的工作,国资委提出“一个确保、六个强化”。“一个确保”就是要确保实现效益的稳步增长,这实际上也是在分析形势,对企业经营情况进行判断的基础上确定的,今年国资委要加大力度、控制风险,积极利用有利条件来确保国企的效益实现稳步增长。

    如何实现这“一个确保”?彭华岗表示有如下“六个强化”的措施:

    ——要强化风险管控,守住不发生重大风险的底线,坚持问题导向,强化底线思维,认真梳理、排查各类风险点,综合研判各种条件的变化,做好沙盘推演和压力测试,提前准备、提前防范,防止各类风险叠加共振,确保不发生重大风险。

    ——要强化自主创新,加快高质量发展的步伐,要紧紧抓住新一轮科技革命和变革的机遇,瞄准关键技术、核心技术,加大强化自主创新,牢牢掌握主动权,努力实现高质量发展的新突破。

    ——要强化实业主业,深入推进供给侧结构性改革,按照“巩固、增强、提升、畅通”的八字方针,深入推进供给侧结构性改革,不断提升实业主业的发展质量和效益。

    ——要强化改革落地,不断激发企业内生活力和发展动力。我刚才讲改革的时候,实际上也是瞄着改革的重点,要提升发展动力,增强改革的活力和动力,打好改革的攻坚战、歼灭战,加快推进改革举措的落地。包括我刚才讲的,要加大综合性改革的推进力度,取得实实在在的效果。

    ——要强化管理提升,努力向世界一流水平迈进。要主动向同行业的领先企业对标,找差距、补短板、强弱项,加快形成同企业发展相适应的管控机制,为培育世界一流企业奠定好的基础。

    ——要强化职能转变,不断提升国资监管的系统性、有效性和针对性,履行好出资人职责,加快实现从管企业向管资本转变,切实把增强活力和强化监管有机统一起来,不断提升监管的效果。

    展开全文
  • 跨站点脚本攻击在跨站点脚本(XSS)攻击中,往往有一恶意用户在表单中(或通过其他用户输入方式)输入信息,这些输入将恶意的客户端标记插入过程或数据库中。例如,假设站点上有一简单的来客登记簿程序,让访问...

    跨站点脚本攻击

    跨站点脚本(XSS)攻击中,往往有一个恶意用户在表单中(或通过其他用户输入方式)输入信息,这些输入将恶意的客户端标记插入过程或数据库中。例如,假设站点上有一个简单的来客登记簿程序,让访问者能够留下姓名、电子邮件地址和简短的消息。恶意用户可以利用这个机会插入简短消息之外的东西,比如对于其他用户不合适的图片或将用户重定向到另一个站点的 JavaScript,或者窃取 cookie 信息。

    幸运的是,PHP 提供了 strip_tags() 函数,这个函数可以清除任何包围在 HTML 标记中的内容。strip_tags() 函数还允许提供允许标记的列表,比如 <b><i>

    清单 16 给出一个示例,这个示例是在前一个示例的基础上构建的。


    清单 16. 从用户输入中清除 HTML 标记

    <?php
    if ($_POST['submit'== "go"){
        
    //strip_tags
        $name = strip_tags($_POST['name']);
        
    $name = substr($name,0,40);
        
    //clean out any potential hexadecimal characters
        $name = cleanHex($name);
        
    //continue processing....
    }

    function cleanHex($input){
        
    $clean = preg_replace
        (
    "![][xX]([A-Fa-f0-9]{1,3})!", "",$input);
        
    return $clean;
    }
    ?>


    <form action=
    "<?php echo $_SERVER['PHP_SELF'];?>" method="post">
    <p><label for="name">Name</label>
    <input type=
    "text" name="name" id="name" size="20" maxlength="40"/></p>

    <p><input type="submit" name="submit" value="go"/></p>
    </form>

    从安全的角度来看,对公共用户输入使用 strip_tags() 是必要的。如果表单在受保护区域(比如内容管理系统)中,而且您相信用户会正确地执行他们的任务(比如为 Web 站点创建 HTML 内容),那么使用 strip_tags() 可能是不必要的,会影响工作效率。

    还有一个问题:如果要接受用户输入,比如对贴子的评论或来客登记项,并需要将这个输入向其他用户显示,那么一定要将响应放在 PHP 的 htmlspecialchars() 函数中。这个函数将与符号、<> 符号转换为 HTML 实体。例如,与符号(&)变成 &amp;。这样的话,即使恶意内容躲开了前端 strip_tags() 的处理,也会在后端被 htmlspecialchars() 处理掉。

    展开全文
  • 六个设计模式

    2020-06-11 13:14:01
    单例模式确保类只有一实例 特点: 构造方法私有化 静态变量存储唯一实例 公开静态方法返回唯一实例 懒汉式单例 public class Singleton { private Singleton() {} private static Singleton single=null; ...
  • Scrum的六个时间箱

    2012-07-22 22:47:13
    Scrum的六个时间箱 时间箱机制是Scrum的一个非常重要的方面。在Scrum框架中有六个时间箱。 时间箱一:Sprint Sprint的本意是指冲刺,在Scrum中,一个Sprint就是一个迭代,Sprint长度通常2-4周,它是一个...
  • 进入2021年,随着越来越多的组织采用新技术,人工智能在技术和网络安全方面的未来将继续...对于希望在2021年将更多的AI集成到其安全堆栈中的企业而言,遵循以下六个步骤以确保有效使用AI而不至于损害其他任何地方的安全
  • 越来越多的人开始使用智能手机,平板电脑或其他的移动设备。出于这原因,移动APP开发已成为当今软件开发中增长最快的领域之一。...定义您的目标受众群体并确保他们需要您的应用。你的APP需要为他们需要什...
  • 就项目管理办公室(PMO)是否最终成为组织的成功部分或者最终被拆除和抛弃而言,以下六个因素非常重要,让我们进一步分析: 1、强大、敬业的领导 优秀的PMO需要由专门的PMO负责人管理,而不是被指派来领导项目。PMO...
  • 对文件的编制、批准、发放、使用、更改、作废和回收等进行控制,确保相关部门及时 得到并使用有效版本。防止误用失效或作废的文件和资料。
  • 最好的项目经理确保他们在大部分时间内都能保持高效,并不惜一切代价避免浪费时间。以下提示可以帮助您更有效地管理时间。 1、创建计划 也许你会问这跟时间管理有什么关系?好吧,如果每人都知道他们在做...
  • “请购-采购-收货”流程要确保: ▪ 所有采购申请都有记录,并且审批通过。 ▪ 根据采购类型、费用和组织架构定制审批路线工作流。 ▪ 从首选供应商中选择物品。 ▪ 采购申请单在预算范围内。 ▪ 采购代理审查采购...
  • 在你把激情和追求投入到下一步之前,请确保你避免这六个陷阱。 编者按:本位作者 Glenn Llopis 在本文中介绍了当人们将想法付诸于行动时会犯的六个错误。 在我的上一篇博客中,我认为每个人都必须接受创业精神...
  • 首先说一下思路:在做Oracle各种问题解决的...如果你不好好理解原理,那么在你想要解决问题的时候思维混乱或者思维固定,老往一方向去考虑问题,而这方向往往是错误的或者低效的,我们需要通过理解原理来优化他们。
  • 信息管理比以前任何时候都更重要,不仅因为...创建并维护数据记录、更新并确保数据安全、以及很容易访问等特点是很多数据记录管理的重点。 参考文献 1.6 Reasons: Why Data Management Leads To Business Success ...
  • 它将由两主要模块组成: GNC算法和实用程序功能以C ++实现,将由飞行软件和我们的内部仿真-PSim使用。 PSim模型和仿真实现。 不推荐使用MATLAB/**列出的MATLAB代码,新的PSim C ++实现将逐步淘汰该代码。 入门...
  • 我们希望能帮助简化这过程,让其更多自动化,从而大幅增加能够吸引到的研究所需参与者人数,同时确保数据的保真度。    2.大数据广告牌 户外营销公司Route正使用大数据在广告牌、长椅以及公交车两侧的广告空间上...
  • 人工智能(AI)能够增强和自动化当前由人类执行的决策或任务,这使其成为数字化业务转型不可或缺的... 为了解决人工智能技术不成熟的问题,首席信息官应确保旨在实现战略性业务目的的应用程序(例如最大化收入或扩展某...
  • 中国古语有,磨刀不误砍柴工。意思是说,足够的准备和学习可以...面对巨大的挑战,激烈的竞争和挑剔的用户,UI/UX设计师需要提高技能,以实现设计的持续改进,从而确保广阔稳定的用户体验市场。以下 6UI/UX...
  • 那么这时候就需要安防监控领域共同遵守一协议,这时候ONVIF协议就这样诞生了。ONVIF标准的建立就是为了解决网络视频监控产品之间的兼容问题。ONVIF致力于通过全球性的开放接口标准来推进网络视频在安防市场的...
  • “对于USB连接器仪器控制您需要了解的六个知识点”由仁昊伟业连接器厂商renhotec为您整理。通过即插即用连接和现代PC及笔记本电脑上几乎无处不在的USB端口,USB已成为控制独立仪器的流行选择。随着越来越多的仪器...
  • 进入下一子过程 ... 在渲染过程中记录的命令被划分为子过程。当一给定子过程的一组命令已经被记录并且我们想要记录另一个子类的命令时,我们...确保开始渲染过程的操作已记录在命令缓冲区中。 指定如何记录子过...
  • 在第二章中,我们介绍了MapReduce模式...测试也写上,确保程序做了你想做的。然后你写一驱动程序来运行一job,它可以使用数据的一 小部分在你的集成开发环境中运行以检查它是否正常工作。如果失败,你需要使用你的
  • 因此我们提供了一些技巧,可以让您确保孩子能够安全地游戏,而不会遭到网络霸凌、不会下载到病毒,或者将生活预算浪费在游戏上。 1. 游戏机放在公共空间,大家共同参与。 将游戏机放在家中的公共空间,或者在...
  • 1、确立一有价值的西格玛设计项目这一阶段的目标在于为将来的活动提供一坚定、清晰的方向。俗语说"良好的开始是成功的一半"。在实施西格玛设计时,绝对...以确保人从事的工作成为组织的一部分。2、聆听...
  • 向响应式对象中添加一属性,并确保新属性同样是响应式的,且触发视图更新。它必须用于向响应式对象上添加新属性,因为 Vue 无法探测普通的新增属性 (比如 this.myObject.newProperty = 'hi') 注意 对象不能是 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,269
精华内容 507
关键字:

六个确保