当前位置:网站首页>简单工厂模式
简单工厂模式
2022-08-09 06:22:00 【考拉盖饭】
简单工厂模式
角色由简单工厂(创造者),抽象产品(所有具体产品的父类,可以是接口或者抽象类),具体产品(继承或者实现具体产品)三个组成
具体实现
public class Test {
// 相当于客户端
public static void main(String[] args) {
// 首先创建工厂,再通过工厂来创建相应的类
Factory factory = new Factory();
factory.getCar("wulin").name();
factory.getCar("dazong").name();
}
// 抽象产品
interface Car {
void name();
}
// 具体产品
static class Dazong implements Car {
@Override
public void name() {
System.out.println("this is dazong");
}
}
// 具体产品
static class Wulin implements Car {
@Override
public void name() {
System.out.println("this is wulin");
}
}
// 简单工厂
static class Factory {
// 通过调用工厂里面的获取实体方法创建具体产品,返回具体产品的抽象产品
public Car getCar(String car){
switch (car){
case "wulin":
return new Wulin();
case "dazong":
return new Dazong();
}
return null;
}
}
}
边栏推荐
猜你喜欢
Invalid argument(s) appears when redis runs lua script
【Feel】In the Unity Feel plugin, Camera cannot display CameraShake correctly
- [email protected]@BSABiS纳米颗粒)|树状大分子稳定的硫化铋纳米颗粒|科研试剂"/>
四氧化三铁/硫化铋纳米复合材料([email protected]@BSABiS纳米颗粒)|树状大分子稳定的硫化铋纳米颗粒|科研试剂
Harbor Enterprise Mirror Warehouse Construction
Likou Brush Question 180
ZIP压缩包文件删除密码的方法
5年测试开发工程师感悟——写给还在迷茫中的朋友
sql问题解答创建表的语句
工控设备的系统如何进行加固
[MySQL]二、进程的关系、MySQL密码破解、建表和建库相关命令
随机推荐
[GO]、数组与切片
Qt learning (3) - Qt module
数据库中间件-jdbi
MYSQLg高级------批量插入百万级数据量
list 字符串的输出方法 print(*a) print(““.join(str(c) for c in a) )
普罗米修斯原理及节点发布
se2clam
SiO2/KH550修饰四氧化三铁纳米磁性颗粒|PDA包裹四氧化三铁磁性纳米颗粒(科研级)
Kubernetes apparmor profile
Polyamide-amine (PAMAM) dendrimer-bismuth sulfide composite nanoparticles | bismuth sulfide modified Gd‑DTPA‑OA ligand | for scientific research
[MySQL]二、进程的关系、MySQL密码破解、建表和建库相关命令
Magnetic Core-Shell Fe3O4 Particles Supported Gold Nanostars | Magnetic Fe3O4-POSS-COOH | Superparamagnetic Fe3O4-Polydopamine Core-Shell Nanoparticles
DevNet: Deviation Aware Networkfor Lane Detection
域名批量查询在线工具
锁执行的过程
二硫化钼/二氧化铪的复合纳米材料(MoS2/HfO2)|钽掺杂二氧化铪纳米颗粒(齐岳bio)
文本字符串长度排序 - 在线工具
2022-08-08:给定一个数组arr,表示从早到晚,依次会出现的导弹的高度。 大炮打导弹的时候,如果一旦大炮定了某个高度去打,那么这个大炮每次打的高度都必须下降一点。 1) 如果只有一个大炮,返回
zip压缩包密码解密
Go lang1.18入门精炼教程——第一章:环境搭建