首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
牛客131083091号
门头沟学院 信息技术岗
关注
已关注
取消关注
@hwx的offer快来:
java设计模式-个人总结
1.常见设计模式知道哪些?2.设计模式的分类 创建型设计模式:单例模式构建模式原型模式抽象工厂模式工厂方法模式行为设计模式:状态模式命令模式解释器模式迭代器模式备忘录模式责任链模式模板方法模式观察者模式访问者模式中介者模式结构型设计模式:装饰者模式外观模式组合模式蝇量模式代理模式享元模式桥连接模式适配器模式简单解释:单例模式(Singleton):确保有且只有一个对象被创建。抽象工厂模式(Abstract Factory):允许客户创建对象的家族,而无需指定他们的具体类。工厂方法模式(Factory Method):由子类决定要创建的具体类是哪一个。装饰者模式(Decorator):包装一个对象,以提供新的行为。状态模式(State):封装了基于状态的行为,并使用委托在行为之间切换。迭代器模式(Iterator):在对象的集合之中游走,而不暴露集合的实现。外观模式(Facade):简化一群类的接口。策略模式(Strategy):封装可以互换的行为,并使用委托来决定要使用哪一个。代理模式(Proxy):包装对象,以控制对此对象的访问。适配器模式(Adapter):封装对象,并提供不同的接口。观察者模式(Observer):让对象能够在状态改变时被通知。模板方法模式(Template Method):有子类决定如何实现一个算法中的步骤。组合模式(Composite):客户用一致的方法处理对象集合和单个对象。命令模式(Command):封装请求成为对象。附:https://www.cnblogs.com/liuzhen1995/p/6047932.html3.单例模式1.单例模式5常见的写法饿汉式懒汉式双检锁静态内部类枚举2.单例的四大原则:构造私有以静态方法或者枚举确保实例只有一个,尤其是多线程环境确保反序列化时不会重新构造对象3.代码饿汉模式-在类被初始化时就已经在内存中创建了对象:以空间换时间,故不存在线程安全问题。public class SingleTon{ //其实就是new private static SingleTon INSTANCE = new SingleTon(); private SingleTon(){} public static SingleTon getInstance(){ return INSTANCE; }} 懒汉模式-在方法被调用后才创建对象,以时间换空间,在多线程环境下存在风险。public class SingleTon{ //先赋null 调用方法才申请内存空间 private static SingleTon INSTANCE = null; private SingleTon(){} //其实就是调用方法才new public static SingleTon getInstance() { if(INSTANCE == null){ INSTANCE = new SingleTon(); } return INSTANCE; } }静态内部类-用的最多public class SingleTon{ private SingleTon(){} //就是静态内部类里面new private static class SingleTonHoler{ private static SingleTon INSTANCE = new SingleTon(); } public static SingleTon getInstance(){ return SingleTonHoler.INSTANCE; } }双检检查锁public class SingleTon{ private static SingleTon INSTANCE = null; private SingleTon(){} //就是俩个多了if判断 和 synchronized public static SingleTon getInstance(){if(INSTANCE == null){ synchronized(SingleTon.class){ if(INSTANCE == null){ INSTANCE = new SingleTon(); } } return INSTANCE; } } }SingleTon方法INSTANCE = new SingleTon(); SingleTon方法:1.在堆内存开辟内存空间。2.在堆内存中实例化SingleTon里面的各个参数。3.把对象指向堆内存空间。附:深入理解单例模式:静态内部类单例原理https://blog.csdn.net/mnb65482/article/details/804585714.说下设计模式的原则1.设计模式的六大原则开闭原则里氏替换原则依赖倒转原则接口隔离原则最少知道原则合成复用原则解释:开闭原则:对扩展开放,对修改关闭。里氏代换原则:父类与子类的继承关系,在父类的基础上有新的方法(行为),调用的时候又能代替父类的方法而且不影响;依赖倒转原则:针对接口编程,依赖于抽象而不依赖于具体;最少知道原则:单一继承或者说就是单调用减少相互作用 合成复用原则:尽量使用合成/聚合的方式,而不是使用继承。5.Spring 框架中都用到了哪些设计模式?【单例模式】Spring 中的 Bean 默认都是单例的【简单工厂】由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类。Spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得Bean对象,但是否是在传入参数后创建还是传入参数前创建这个要根据具体情况来定。【工厂方法】实现了FactoryBean接口的bean是一类叫做factory的bean。其特点是,spring会在使用getBean()调用获得该bean时,会自动调用该bean的getObject()方法,所以返回的不是factory这个bean,而是这个bean.getOjbect()方法的返回值。【模板方法模式】 Spring 中 jdbcTemplate、hibernateTemplate 等以 Template 结尾的对数据库操作的类,它们就使用到了模板模式。父类定义了骨架(调用哪些方法及顺序),某些特定方法由子类实现。最大的好处:代码复用,减少重复代码。除了子类要实现的特定方法,其他方法及方法调用顺序都在父类中预先写好了。【包装器设计模式 】 我们的项目需要连接多个数据库,而且不同的客户在每次访问中根据需要会去访问不同的数据库。这种模式让我们可以根据客户的需求能够动态切换不同的数据源。【观察者模式】Spring 事件驱动模型就是观察者模式很经典的一个应用。spring的事件驱动模型使用的是 观察者模式 ,Spring中Observer模式常用的地方是listener的实现【适配器模式】 Spring AOP 的增强或通知(Advice)使用到了适配器模式、spring MVC 中也是用到了适配器模式适配Controller。Spring定义了一个适配接口,使得每一种Controller有一种对应的适配器实现类,让适配器代替controller执行相应的方法。这样在扩展Controller时,只需要增加一个适配器类就完成了SpringMVC的扩展了【装饰器模式】动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。Spring中用到的包装器模式在类名上有两种表现:一种是类名中含有Wrapper,另一种是类名中含有Decorator。【动态代理】切面在应用运行的时刻被织入。一般情况下,在织入切面时,AOP容器会为目标对象创建动态的创建一个代理对象。SpringAOP就是以这种方式织入切面的。织入:把切面应用到目标对象并创建新的代理对象的过程。【策略模式】Spring框架的资源访问Resource接口。该接口提供了更强的资源访问能力,Spring 框架本身大量使用了Resource 接口来访问底层资源。6.项目中用到哪些设计模式?略[看好戏]
点赞 22
评论 1
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
01-20 19:00
中国民用航空飞行学院 数据分析师
数分?真的还值得去学吗?
作为一个双非大数据专业的大四学生,自己在大三选择择业方向时,毫不犹豫的选择了数据分析作为自己一开始的求职方向,那么作为花费很多精力学习数分,找过多段数据实习,且经历了一整个秋招的可怜大学生,关于数分的态度又是怎样呢?首先我想先根据自己的过往经验来给数分下一个定义,目前的数分岗主要有两种情况,一种是非常纯粹的数分,涉及AB测试,数据埋点,机器学习相关内容的,这一部分岗位对技术和学历的要求极强;而另一部分岗位则是偏向业务侧,相较于数分,可能更偏向数据策略运营,这一类岗位在部分公司也会直接写成运营岗。相信每一个对数分有兴趣的同学,或多或少都在网上看到过,纯粹的数分岗是非常吃学历的,这一点我深有体会,...
为了入行xx岗,我学了_...
点赞
评论
收藏
分享
01-20 10:49
蚌埠坦克学院 嵌入式软件开发
领导有时候也会不靠谱
有一次我们团队要交一份项目报告,领导定的截止时间是周五下午5点。于是大家按计划推进,周三还在做最后的功能测试。到了周四,领导突然在群里发消息说:“报告格式要重新改,内容也要更详细,最好明天下午3点前交。”这时候问题来了:1我们已经按原格式做了大量排版和数据整理;2功能测试还没完全结束;3领导的要求突然变更,而且还提前了两个小时。大家只好连夜加班,甚至有人为了赶时间把数据临时拼凑上去。结果第二天交上去后,领导又说:“数据不够严谨,重新核对一下。”这下又要再改。更让人无语的是,领导自己却在下午3点之后才开始看我们提交的内容,甚至还说:“你们怎么这么慢?”那一刻大家都觉得很尴尬:我们不是不努力,而是...
领导做过最不靠谱的事
点赞
评论
收藏
分享
2025-12-31 13:35
已编辑
同程旅行_前端开发
怀疑hr没上过学
很早之前的了。hr:"我看你简历上写的是,20年到24年在xxx学校上学。”我:是的。hr:(震惊)啊!?(小声)你上了五年!!!(发现新大陆)你为什么会上五年呢?我:😅这个…,怎么说呢,20年9月到24年6月。好像是4年……😅hr:😳嗷嗷,这样。但是我看现在(23年11月)你才大三,你们学校大三就可以实习了吗?我:,我大四。。。。
迷茫的大四🐶:
属于是上班把脑子上啥了
面试官问过你最刁钻的问题...
点赞
评论
收藏
分享
2025-12-05 03:11
上海电机学院 Java
秋招正式完结撒花
收获7个大厂offerssp*3(有一个可能是大sp)sp*2白菜*2最后的去向还是选择字节了牛油们加油,学历真的不是决定秋招成败的唯一因素,卸载牛客了,不和任何人比较了,我拿到的offer就是对于我自己来说最好的结局
想进开水团喝开水:
你告诉我你这个学校真的假的
点赞
评论
收藏
分享
01-21 09:21
北京邮电大学 嵌入式工程师
秋招G了,春招还能翻盘吗?
刚刚结束的秋招中,有人欢喜有人忧。欢喜的是,有些同学找到了不错的工作;忧愁的是,也有同学没有心仪的去处。秋招和春招,是学生们心头的两个坎,之前看师兄师姐们或优雅或费力的迈过这些坎,感触并不大。终于,在毕业的前一年,也轮到了我们自己。第一次经历,自然心头有着不少疑惑。今天从计算机行业出发,我带你抽丝剥茧,把事情整清楚。首先抛出三个大家关心的问题:校园招聘的秋招和春招有什么区别秋招零offer,春招还有机会吗秋招已经签约了,能去春招再看看吗春夏秋冬,四季变换,自有顺序。那为啥秋招会在春招之前呢?因为,对于学生来说,在校期间的求职时间有两段,一段是毕业前一年的秋天,在 7 月 ~ 11月之间,称为秋...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
备战春招,网申一键填写工具,发布了!!!
3.1W
2
...
实习产出如何包装?
8696
3
...
【官方活动】牛客新春计划:给陌生人的一封信
7358
4
...
32岁程序员猝死,底薪3千要24h待岗
6020
5
...
27双非非科班4段实习从字节tt到腾讯wxg
5898
6
...
我爸对计算机行业的看法,是否准确?
5009
7
...
27届实习时间线
4510
8
...
专科工作一年后的心里话
3566
9
...
第一次被同事气笑了
3333
10
...
坚持的爱好是规律饮食
3146
创作者周榜
更多
正在热议
更多
#
哪些公司开春招了?
#
9344次浏览
115人参与
#
工作压力大怎么缓解
#
137292次浏览
1228人参与
#
上班以后,你还有哪些坚持的爱好?
#
6713次浏览
167人参与
#
找工作以来,你最看不惯__
#
12985次浏览
286人参与
#
你都在哪些场所面过试?
#
18622次浏览
218人参与
#
AI coding的好用工具分享
#
16955次浏览
357人参与
#
互联网公司评价
#
478064次浏览
4053人参与
#
实习怎么做才有更好的产出
#
11237次浏览
204人参与
#
实习教会我的事
#
51444次浏览
399人参与
#
你最近因为什么迷茫?
#
32653次浏览
462人参与
#
实习离职怎么跟领导说
#
75744次浏览
420人参与
#
实习生工资多少才算正常?
#
11952次浏览
189人参与
#
拼多多工作体验
#
44222次浏览
283人参与
#
四大天坑是哪四家?
#
99767次浏览
234人参与
#
机械制造面试记录
#
307774次浏览
3152人参与
#
你给AI提过哪些离谱的需求?
#
5567次浏览
159人参与
#
领导做过最不靠谱的事
#
12079次浏览
203人参与
#
工作一周年分享
#
49880次浏览
256人参与
#
为了实习逃课值吗?
#
61925次浏览
517人参与
#
选offer应该考虑哪些因素
#
139080次浏览
980人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务