代理模式用来初始化的延迟下载

package 设计模式;
//代理模式实现延迟加载来减小启动时间
//数据库查询接口
interface IDBQery{
public String request();
}class DBQuery implements IDBQery
{//创建一个DBQery非常耗时的,这里面我可以在需要DBQuery的时候在创建public DBQuery(){try {Thread.sleep(3000);} catch (InterruptedException e) {// TODO Auto-generated catch block
            e.printStackTrace();}//非常耗时的操作
        }@Overridepublic String request() {// TODO Auto-generated method stubreturn "ans";}}
class DBQueryProxy implements IDBQery
{private IDBQery real=null; //被代理的对象
@Overridepublic String request() {// TODO Auto-generated method stubif(real==null) real=new DBQuery();return real.request();}}public class 代理 {/*** @param args*/public static void main(String[] args) {// TODO Auto-generated method stubIDBQery proxy=new DBQueryProxy();//创建代理类;不初始化被代理的对象,而是延迟到真正用到这个类的时候String ans=proxy.request();System.out.println(ans);}}

 

转载于:https://www.cnblogs.com/hansongjiang/p/3870390.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/376803.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux网络故障排查命令(ifconfig、ping、telnet、netstat、lsof、nc、curl、tcpdump)

目录ifconfig-s,显示网卡信息的精简列表-a、up、down将IP地址绑定到某个网卡,以及解绑操作pingtelnetnetstatlsofnc模拟一个服务器程序和客户端程序进行通信发送文件curltcpdump参数连接一个正常的监听端口ifconfig 该命令用来查看当前系统的网卡和IP地…

My Oracle Support Metalink站点最近将放弃flash界面转而使用ADF HTML

根据oracle官方博客的报道《The New My Oracle Support User Interface (HTML-based) 》, MY ORACLE SUPPORT开发team会在最近将support.oracle.com站点从原来的flash界面迁移到基于ADF HTML的用户界面上。 实际上在2012年的 January 27, MOS开发team就…

BF算法

BF(Brute Force)算法是普通的模式匹配算法,BF算法的思想就是将目标串S的第一个字符与模式串T的第一个字符进行匹配,若相等,则继续比较S的第二个字符和 T的第二个字符;若不相等,则比较S的第二个字符和T的第一个字符&…

心跳检测以及应用层心跳包机制设计

博主联系方式: QQ:1540984562 微信:wxid_nz49532kbh9u22 QQ交流群:750313950(嵌入式方向) QQ交流群:856398158(后端方向) 目录心跳检测应用场景死连接情况保活传递有效业务数据心跳包…

【APUE】孤儿进程与僵死进程

基本概念: 在unix/linux中,正常情况下,子进程是通过父进程创建的,子进程在创建新的进程。子进程的结束和父进程的运行是一个异步过程,即父进程永远无法预测子进程 到底什么时候结束。 当一个 进程完成它的工作终止之后&#xff0c…

一个DBA的工作写照

一个DBA的工作写照, 一个DBA的内心 Know the DBA Mind! DBA也是 IT民工啊, 民工何苦为难民工! 转载于:https://www.cnblogs.com/macleanoracle/archive/2013/03/19/2968227.html

使用mutex和条件变量实现信号量

c提供了互斥量:mutex和条件变量:condition_variable,但是并没有信号量:semaphore。而linux和windows系统库会提供的。下面简单介绍一下信号量的特性,然后给出一个简单的demo,使用mutex condition_variable…

2014-07-28 使用Axure RP进行手机端BBS的原型设计

今天是在吾索实习的第14天。因本公司的微信公众号需要有一个对外的技术交流平台,所以我们小组打算设计一个手机端的BBS以满足其要求。首先,我们需要做的是进行数据库设计与原型设计,然后提交给经理验收,看看是否合理,是…

jquery exif + lazyload实现延迟加载并显示相片exif信息

对一个摄影爱好者来说&#xff0c;从高手的作品中学习是非常有用的。而照片的光圈&#xff0c;快门&#xff0c;感光度等信息是关注的重点。 上代码&#xff1a; 1 <script src"../js/jquery.js" type"text/javascript"></script>2 <script…

undefined reference to `pthread_create‘(linux下Clion使用thread报错)

完整报错&#xff1a; [ Build | AsyncLogger | Debug ] /snap/clion/169/bin/cmake/linux/bin/cmake --build /home/dyy/CLionProjects/AsyncLogger/cmake-build-debug --target AsyncLogger -- -j 6 [ 50%] Linking CXX executable AsyncLogger /usr/bin/ld: CMakeFiles/Asy…

UVALive 6257 Chemist's vows --一道题的三种解法(模拟,DFS,DP)

题意&#xff1a;给一个元素周期表的元素符号&#xff08;114种&#xff09;&#xff0c;再给一个串&#xff0c;问这个串能否有这些元素符号组成&#xff08;全为小写&#xff09;。 解法1&#xff1a;动态规划 定义&#xff1a;dp[i]表示到 i 这个字符为止&#xff0c;能否有…

.NET开发相关使用工具和框架【转载】

开发类 visual_studio 2005-2012系列----------语言开发工具 Visio 2003 / Power Desiger -----------建模工具 Dreamweaver_CS5 --------------网页设计 ExpressionStudio 4 / blend 4 -------------wpf/silverlight设计工具 开发辅助类 SVN 主程序 ---------------文件控制 I…

JAVA数组的定义及用法

数组是有序数据的集合&#xff0c;数组中的每一个元素具有同样的数组名和下标来唯一地确定数组中的元素。 1. 一维数组 1.1 一维数组的定义 type arrayName[]; type[] arrayName; 当中类型(type)能够为Java中随意的数据类型&#xff0c;包含简单类型组合类型&#xff0c;数组名…

php操作httpsqs

php初始化httpsqs: include_once("httpsqs_client.php");$httpsqs new httpsqs("127.0.0.1", 1218, "mypass123", "utf-8"); php操作httpsqs:常用命令 操作入队&#xff1a; $result $httpsqs->put(xiongwei2, test1); 获取队列中…

异步日志系统设计demo

目录简单版本1优化版本1优化版本2对于QPS要求很高或者对性能有一定要求的服务器程序&#xff0c;同步写日志会对服务的关键性逻辑的快速执行和及时响应带来一定的性能损失&#xff0c;因为写日志时等待磁盘IO完成工作也需要一定时间。为了减少这种损失&#xff0c;一般采用异步…

js unix时间戳转换

一、unix时间戳转普通时间&#xff1a; var unixtime1358932051; var unixTimestamp new Date(unixtime* 1000); commonTime unixTimestamp.toLocaleString(); alert("普通时间为&#xff1a;"commonTime); 二、普通时间转unix时间戳 var str "2013-01-01 00…

hdu 1025(最长非递减子序列的n*log(n)求法)

题目链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid1025 经典题。。。最长非递减序列的n*log(n)求法。。。orz... View Code 1 #include<iostream>2 const int N500007;3 using namespace std;4 int city[N];5 int dp[N];//dp[i]保存的是长度为i的最长不降…

消息队列重要机制讲解以及MQ设计思路(kafka、rabbitmq、rocketmq)

目录《Kafka篇》简述kafka的架构设计原理&#xff08;入口点&#xff09;消息队列有哪些作用&#xff08;简单&#xff09;消息队列的优缺点&#xff0c;使用场景&#xff08;基础&#xff09;消息队列如何保证消息可靠传输死信队列是什么&#xff1f;延时队列是什么&#xff1…

js判断手机浏览器

最新浏览器识别合并。 demo&#xff1a;http://v.qq.com -> http://v.qq.com/h5    http://v.qq.com/ -> http://v.qq.com/h5    http://v.qq.com/h5 -> http://v.qq.com/h5 <script type"text/javascript"> (function(W){ …

数据库归档模式

1、在sys身份下登陆oracle&#xff0c;执行命令archive log list; SQL> archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence …