- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java面试题汇总java面试题汇总
JSP有九大内置对象?
答:Request,Response,Session,Application,Out,Pagecontext,Config,Page,Exception
2 java设计模式
总体来说设计模式分为三大类:
创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
单例模式分三种 懒汉式单例、 饿汉式单例、 登记式单例。
懒汉式单例:需要加锁才能实现多线程同步,但是效率会降低。优点是延时加载。public class LazySingleton {//私有静态变量,加载时不初始化 private static LazySingleton lazySingleton = null; //私有的构造方法,避免外部创建实例 private LazySingleton(){ } synchronized public static LazySingleton getInstance(){ if(lazySingleton == null){ lazySingleton = new LazySingleton(); } return lazySingleton; }}
饿汉式单例: 因为加载类的时候就创建实例,所以线程安全(多个ClassLoader存在时例外)。 缺点是不能延时加载public class EagerSingleton {//私有静态唯一的变量,在类加载好了,就创建了实例 private static final EagerSingleton eagerSingleton = new EagerSingleton(); //私有的构造方法,避免外界创建实例 private EagerSingleton(){ } public static EagerSingleton getInstance(){ return eagerSingleton; }}
登记式单例:登记式单例类是GoF 为了克服饿汉式单例类及懒汉式单例类均不可继承的缺点而设计的。只是它的子类实例化的方式只能是懒汉式的, 这是无法改变的。登记式单例类的一个缺点:(1)由于子类必须允许父类以构造子调用产生实例,因此,它的构造方法必须是公开的这样一来,就等于允许了以这样方式产生实例而不在父类的登 记中。(2)由于父类的实例必须存在才可能有子类的实例,这在有些情况下是一个浪费。这是登记式单例类的另一个缺点。
import java.util.*;public class RegSingleton {//登记薄,用来存放所有的实例 private static Map regSingletonMap = new HashMap(); //在类加载的时候添加一个实例到登记薄 static{ RegSingleton regSingleton = new RegSingleton(); regSingletonMap.put(regSingleton.getClass().getName(),regSingleton); }
//保护的默认构造子 protected RegSingleton(){ } public static RegSingleton getInstance(String name){ if(name == null){ name = RegSingleton; } if(regSingletonMap.get(name) == null){ try{ regSingletonMap.put(name, (RegSingleton)Class.forName(name).newInstance()); }catch(Exception e){ e.printStackTrace();
您可能关注的文档
最近下载
- 手足口病诊疗指南(2024版) .pdf VIP
- 北师大版二年级上册数学第三、四单元能力达标测试卷.docx VIP
- 高中英语人教版必修第一册词汇表单词英译汉默写.pdf VIP
- 2025年安徽理工大学教师招聘考试笔试模拟试题及答案解析.docx VIP
- 常用药物剂型特点和合理科学应用.pptx VIP
- 化学-2025步步高化学一轮复习讲义(上册).pdf VIP
- 环境科学与工程专业英语第三版钟理课文翻译3.16.docx VIP
- T_CACM 1619—2024(儿童厌食中医诊疗指南).pdf VIP
- 缺血性脑血管病2021继续教育答案.pdf VIP
- 钢铁工业课题研究论文(五篇):中水处理技术中钢铁工业应用、钢铁工业的废水处理技术….doc VIP
文档评论(0)