谁能帮忙看看《thinking in java》第14章的这个简单的注册工厂有啥用? java注册工厂 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这是很常见的一种设计模式,如果java语言还不是很好可以先忽略这些。我是菜鸟,我说我的理解。给你举个例子吧,要做一个加减乘除最简单的俩数计算。a+b 或者a-b那么可以定义一个接口 public interface Operator(){public double getResult(double a,double b);}然后你的加减乘除都实现这个接口,class plus implements Operator{ double a; double b; plus(double a,double b){ this.a=a;this.b=b; }public double getResult(double a,double b){ return a+b;}}减法,乘法,除法只用写类就行。这样有什么好处呢? 就是说,你现在有main函数,写好的,调用接口中的方法,不用考虑具体是哪个类,到时候根据你传入的类名就能得到想要的结果。 又有一个原则:扩展开放,修改关闭。所以这么写就能直接增加功能但不修改代码。也就是面向接口的编程模式。具体你用反射加配置文件就能实现外部控制程序执行。减小耦合度,减小依赖程度。所谓轻量级。 在下看think in java的时候java还没有泛型 T_T 这题java线程死锁执行顺序 真正的菜鸟级问题!!!!!!!!!我都不好意思问了 请各位高手帮忙!!! string池,常规区,代码区,堆栈是什么? 如何用Java从刷卡机上读数据? 单根结构使得java有些笨重? 怎么样把基本数据类型转换为引用类型啊?唉,菜鸟 如何让自己的软件一开始就最大化? 有关encoding的一个问题 关于jtree的程序查错,愿出150分,请教高手!! 新手求教JDK安装问题 请问JAVA多线程实现一边。。。一边。。。大概的思路是什么?
给你举个例子吧,要做一个加减乘除最简单的俩数计算。a+b 或者a-b
那么可以定义一个接口 public interface Operator(){
public double getResult(double a,double b);
}然后你的加减乘除都实现这个接口,class plus implements Operator{
double a;
double b;
plus(double a,double b){
this.a=a;this.b=b;
}
public double getResult(double a,double b){
return a+b;
}
}减法,乘法,除法只用写类就行。
这样有什么好处呢? 就是说,你现在有main函数,写好的,调用接口中的方法,不用考虑具体是哪个类,到时候根据你传入的类名就能得到想要的结果。
又有一个原则:扩展开放,修改关闭。所以这么写就能直接增加功能但不修改代码。也就是面向接口的编程模式。
具体你用反射加配置文件就能实现外部控制程序执行。
减小耦合度,减小依赖程度。所谓轻量级。