java 工厂模式 注册_java工厂模式

工厂模式代码其实很简单,道理也很简单,其实它的宗旨就是为了减少代码的的重复,以及后期业务逻辑变化,只需要改变很少的代码量

如果创建对象的过程都很复杂,需要一定的代码量,而且很多地方都要用到,那么就会有很多的重复代码。我们可以这些创建对象的代码放到工厂里统一管理。既减少了重复代码,也方便以后对的创建过程的修改维护。

统一管理,所以发生业务逻辑变化,不需要找到所有需要创建的地方去逐个修正,只需要在工厂里修改即可,降低维护成本。

package com.jttxtech.test;

public interface Fruit {

public void eat();

}

class Apple implements Fruit {

@Override

public void eat() {

System.out.println("苹果可以吃 !");

}

}

class Grape implements Fruit{

@Override

public void eat() {

System.out.println("葡萄可以吃 !");

}

}

/*创建一个水果工厂*/

class FruitFactory {

public static Fruit createFactory(String name) {

if("grape".equals(name)) {

return new Grape();

}else if ("apple".equals(name)){

return new Apple();

}else {

return null;

}

}

}

class JavaDemo {

public static void main(String[] args) {

Fruit factory = FruitFactory.createFactory("apple");

factory.eat();

}

}

此博客仅仅是为了方便自己日后工作使用,如果有错误,请评论指正

工厂模式代码其实很简单,道理也很简单,其实它的宗旨就是为了减少代码的的重复,以及后期业务逻辑变化,只需要改变很少的代码量 如果创建对象的过程都很复杂,需要一定的代码量,而且很多地方都要用到,那么就会有很多的重复代码。我们可以这些创建对象的代码放到工厂里统一管理。既减少了重复代码,也方便以后对的创建过程的修改维护。 统一管理,所以发生业务逻辑变化,不需要找到所有需要创建的地方去逐个修正,只需要在工厂里修改即可,降低维护成本。 package com.jttxtech.test; public interface Fruit { public void eat(); } class Apple implements Fruit { @Override public void eat() { System.out.println("苹果可以吃 !"); } } class Grape implements Fruit{ @Override public void eat() { System.out.println("葡萄可以吃 !"); } } /*创建一个水果工厂*/ class FruitFactory { public static Fruit createFactory(String name) { if("grape".equals(name)) { return new Grape(); }else if ("apple".equals(name)){ return new Apple(); }else { return null; } } } class JavaDemo { public static void main(String[] args) { Fruit factory = FruitFactory.createFactory("apple"); factory.eat(); } } 此博客仅仅是为了方便自己日后工作使用,如果有错误,请评论指正
经验分享 程序员 微信小程序 职场和发展