例如:
public class Test
{
public static void main(String[] args)
{
Enviroment e = new Enviroment(new Add());
System.out.println(e.returnAns(1,2));
Enviroment e1 = new Enviroment(new Sub());
System.out.println(e1.returnAns(1,2));
}
}
interface Stra
{
int calu(int a,int b);
}
class Add implements Stra
{
public int calu(int a,int b)
{
return a+b;
}
}
class Sub implements Stra
{
public int calu(int a,int b)
{
return a - b;
}
}
class Enviroment
{
private Stra s;
public Enviroment(Stra s)
{
this.s = s;
}
public int returnAns(int a,int b)
{
return this.s.calu(a,b);
}
}
不同的类实现相同的接口,然后利用多态性来统一调用这些实现。不用判断到底是哪个类来实现什么样的功能。
这里有接口,实现接口的类,还有一个运行环境类。
myEclipse ctrl + t 来查找所以相应函数的实现类。