工廠方法模式: 又稱工廠模式,通過(guò)定義工廠父類負(fù)責(zé)定義創(chuàng)建對(duì)象的公共接口,而子類則負(fù)責(zé)生成具體的對(duì)象。
導(dǎo)致類個(gè)數(shù)過(guò)多
//鼠標(biāo)產(chǎn)品
public interface Mouse {
void printBrand();
}
//戴爾鼠標(biāo)
public class DellMouse implements Mouse {
@Override
public void printBrand() {
System.out.println("DELL MOUSE");
}
}
//惠普鼠標(biāo)
public class HpMouse implements Mouse {
@Override
public void printBrand() {
System.out.println("HP MOUSE");
}
}
//鼠標(biāo)工廠接口
public interface MouseFactory {
Mouse getMouse();
}
//戴爾鼠標(biāo)工廠
public class DellMouseFactory implements MouseFactory {
@Override
public Mouse getMouse() {
return new DellMouse();
}
}
//惠普鼠標(biāo)工廠
public class HpMouseFactory implements MouseFactory {
@Override
public Mouse getMouse() {
return new HpMouse();
}
}
//測(cè)試
@SpringBootApplication
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class);
MouseFactory mouseFactory = new HpMouseFactory();
mouseFactory.getMouse().printBrand();
}
}