File tree Expand file tree Collapse file tree
design-pattern/src/main/java/creational Expand file tree Collapse file tree Original file line number Diff line number Diff line change 66 * 简单工厂模式
77 */
88public class SimpleFactoryPattern {
9-
10- public static void main (String [] args ) {
11- CarFactory factory = new CarFactory ();
12- Car car = factory .getCar ("Benz" );
13- //Car car = factory.getCar("BMW");
14- car .run ();
15- }
16-
9+ //汽车抽象
1710 static abstract class Car {
1811 abstract void run ();
1912 }
20-
13+ //奔驰汽车
2114 static class Benz extends Car {
2215
2316 @ Override
2417 void run () {
2518 System .out .println ("奔驰车在跑" );
2619 }
2720 }
28-
21+ //宝马汽车
2922 static class BMW extends Car {
3023
3124 @ Override
3225 void run () {
3326 System .out .println ("宝马车在跑" );
3427 }
3528 }
36-
29+ //汽车工厂,根据汽车名称创建汽车
3730 static class CarFactory {
3831 Car getCar (String name ) {
3932 if (name .equals ("Benz" )) {
@@ -45,5 +38,12 @@ Car getCar(String name) {
4538 }
4639 }
4740 }
41+
42+ public static void main (String [] args ) {
43+ CarFactory factory = new CarFactory ();
44+ Car car = factory .getCar ("Benz" );
45+ //Car car = factory.getCar("BMW");
46+ car .run ();
47+ }
4848}
4949
You can’t perform that action at this time.
0 commit comments