简单工厂模式中的静态方法问题
今天再看设计模式中的简单工厂模式,说简单工厂模式使用的是静态方法,使用时不需要实例化,哪位朋友能给一个简单的可以运行的例子,以便理解“不需要实例化”就可以调用静态方法。
等待。。。
[解决办法]
class Test1{ void test() { System.out.println("Hello Test1!!"); }}class Test2{ static void test() { System.out.println("Hello Test2!!"); }}public class Demo{ public static void main(String[] args) { Test1 test1 = new Test1(); test1.test();//像调用Test1的test方法,就得先实例化Test1 Test2.test();//直接类名.方法名就OK了,不需要实例化。 }}
[解决办法]
////////////////////////////////////////////////package study.java.designpattern.simplefactory;public class Test { /** * @param args */ public static void main(String[] args) { /* 通过汽车工厂的静态方法,创建一辆BMW */ Car bmw = CarFactory.buildCar(); /* 开BMW,很爽 */ bmw.drive(); }}////////////////////////////////////////////////package study.java.designpattern.simplefactory;/** * 简单工厂类,用于生产汽车 * @author md313 * */public class CarFactory { /** * 静态工厂方法,生产一辆全新的Car * @return 全新的Car */ public static Car buildCar() { Car c = new Car(); return c; } }////////////////////////////////////////////////package study.java.designpattern.simplefactory;/** * 产品类 * @author md313 * */public class Car { public void drive() { System.out.println("Car driving..."); } }////////////////////////////////////////////////