一线互联网大厂Java核心面试题库
正逢面试跳槽季,给大家整理了大厂问到的一些面试真题,由于文章长度限制,只给大家展示了部分题目,更多Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等已整理上传,感兴趣的朋友可以看看支持一波!
工厂方法模式四要素:
抽象产品;具体产品;抽象工厂;具体工厂。
代码说明:
前言中的案例,正好可以用工厂方法模式实现。
现在以保存功能为例,以bmp图片,jpg图片为例,采用工厂方法模式设计,结构如下:
(1)抽象产品
package com.bean;
public interface Image {
/**
* 保存图片
* @param name 图片名称
*/
void save(String name);
}
(2)具体产品1(bmp)
package com.bean;
public class BmpImage implements Image {
public void save(String name) {
System.out.println("获得 [" + name + ".bmp]");
}
}
(3)具体产品2(jpg)
package com.bean;
public class JpgImage implements Image {
public void save(String name) {
System.out.println("获得 [" + name + ".jpg]");
}
}
(4)抽象工厂
package com.factory;
import com.bean.Image;
public interface ImageFactory {
/**
* 获取图片类实例
*/
Image getImage();
}
(5)具体工厂1(bmp)
package com.factory;
import com.bean.BmpImage;
import com.bean.Image;
public class BmpFactory implements ImageFactory {
public Image getImage() {
return new BmpImage();
}
}
(6)具体工厂2(jpg)
package com.factory;
import com.bean.JpgImage;
import com.bean.Image;
# 惊喜
最后还准备了一套上面资料对应的面试题(有答案哦)和面试时的高频面试算法题(如果面试准备时间不够,那么集中把这些算法题做完即可,命中率高达85%+)
![image.png](https://img-blog.csdnimg.cn/img_convert/084cac3a1a4d79d12b92f657939e9c46.webp?x-oss-process=image/format,png)
![image.png](https://img-blog.csdnimg.cn/img_convert/dbcee623cc9fb14653e50e751aaf2aeb.webp?x-oss-process=image/format,png)
> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)收录**
**[需要这份系统化的资料的朋友,可以点击这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**
02)]
> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)收录**
**[需要这份系统化的资料的朋友,可以点击这里获取](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**