package net.util;
/**
* @项目名:spring2.5
* @包名:net.util
* @文件名:FactoryDemo.java
* @日期:Jun 21, 2011 4:37:02 PM
* @备注:工厂模式
* @作者:apple
*/
public class FactoryDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Car c=Factory.getCarInstance("Banz");
if(c!=null){
c.run();
c.stop();
}
else{
System.out.println("制造不了");
}
}
}
class Factory{
public static Car getCarInstance(String type){
Car c=null;
try {
c=(Car)Class.forName("net.util."+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;
}
}
interface Car{
public void run();
public void stop();
}
class Banz implements Car{
public void run() {
// TODO Auto-generated method stub
System.out.println("Banz跑");
}
public void stop() {
// TODO Auto-generated method stub
System.out.println("Banz停");
}
}
class Ford implements Car{
public void run() {
// TODO Auto-generated method stub
System.out.println("Ford跑");
}
public void stop() {
// TODO Auto-generated method stub
System.out.println("Ford停");
}
} 0
0
相关文章
C# Polly策略使用方法 C#如何实现Http请求的重试和熔断
C# GitHub Actions配置方法 C#如何为.NET项目设置CI/CD
C# 反射创建实例方法 C#如何使用Activator.CreateInstance
c# PGO (Profile-Guided Optimization) 如何提升并发性能
C# 程序集加载方法 C#如何使用Assembly.LoadFile加载DLL
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门AI工具
相关专题
C++ 高级模板编程与元编程
本专题深入讲解 C++ 中的高级模板编程与元编程技术,涵盖模板特化、SFINAE、模板递归、类型萃取、编译时常量与计算、C++17 的折叠表达式与变长模板参数等。通过多个实际示例,帮助开发者掌握 如何利用 C++ 模板机制编写高效、可扩展的通用代码,并提升代码的灵活性与性能。
17
2026.01.23
热门下载
相关下载
最新文章








