public interface BinaryNodeInterface { public T getData(); public void setData(T newData); public BinaryNodeInterface getLeftChild(); public BinaryNodeInterface getRightChild(); public void setLeftChild(BinaryNodeInterface leftChild); public void setRightChild(BinaryNodeInterface rightChild); public boolean hasLeftChild(); public boolean hasRightChild(); public boolean isLeaf(); public int getNumberOfNodes(); public int getHeight(); }