Java 如何创建一个接口实例作为另一个类的参数';建造师?

Java 如何创建一个接口实例作为另一个类的参数';建造师?,java,object,interface,Java,Object,Interface,我得到了类和接口。有一个类实现了接口,但同一个类使用接口的对象 public interface Function { public double eval(double valueIndependentVariable); } public class PiecewiseFunction implements Function { private Function left; private Function right; priva

我得到了类和接口。有一个类实现了接口,但同一个类使用接口的对象

   public interface Function {

        public double eval(double valueIndependentVariable);
    }

public class PiecewiseFunction implements Function {

    private Function left;
    private Function right;
    private double boundary;

    public PiecewiseFunction(Function left, Function right, double boundary) {
        this.left = this.left;
        this.right = this.right;
        this.boundary = this.boundary;
    }

    @Override
    public double eval(double valueIndependentVariable) {
        if (valueIndependentVariable < boundary) {
            return left.eval(valueIndependentVariable);
        } else {
            return right.eval(valueIndependentVariable);
        }
    }

}

您可以使用实现函数的任何其他类:

class Foo implements Function
{
   private double boundary;

   public Foo(double boundary)
   {
      this.boundary = boundary;
   }

   @Override
   public double eval(double valueIndependentVariable)
   {
      // add implementation here
   }
}
因此,您的示例可以如下所示:

public class Functie 
{

   public static void main(String[] args)
   {
       Function foo = new Foo(10.0);
       Function bar = new Foo(12.0);
       Function graad = new PiecewiseFunction(foo, bar, 33);
       System.out.println(graad.eval(26));
   }
}

你是什么意思?我该怎么做?就像其他物体一样。获取一个实现接口的类并实例化它。然后将对实例的引用传递给您的
分段函数
构造函数。。
public class Functie 
{

   public static void main(String[] args)
   {
       Function foo = new Foo(10.0);
       Function bar = new Foo(12.0);
       Function graad = new PiecewiseFunction(foo, bar, 33);
       System.out.println(graad.eval(26));
   }
}