package com.youyj.factory.factorydemo03;
interface Car
{
public void start();
public void stop();
}
class Benz implements Car
{
@Override
public void start()
{
System.out.println("Benz 车启动了...");
}
@Override
public void stop()
{
System.out.println("Benz 车停止了...");
}
}
class Fort implements Car
{
@Override
public void start()
{
System.out.println("Fort 车启动了。。。");
}
@Override
public void stop()
{
System.out.println("Fort 车停止了。。。");
}
}
class Factory
{
public static Car getInstance(String type)
{
Car c = null;
try
{
c = (Car) Class.forName("com.youyj.factory.factorydemo03." + type)
.newInstance();
}
catch (InstantiationException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IllegalAccessException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (ClassNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
return c;
}
}
public class FactoryDemo03
{
/**
* @param args
*/
public static void main(String[] args)
{
Car car = Factory.getInstance("Fort");
if (null != car)
{
car.start();
car.stop();
}
else
{
System.out.println("该工厂造不成该汽车");
}
}
}
本文通过实现工厂模式,展示了如何使用Java创建并操作Benz和Fort两种不同类型的汽车实例。重点阐述了如何通过工厂方法获取特定类型的汽车对象,并演示了汽车启动和停止的方法。
1003

被折叠的 条评论
为什么被折叠?



