### Question:
EagerOperation extends AbstractOperation { @Override public int numOutputs() { return outputHandles.length; } EagerOperation(
      EagerSession session,
      TFE_Op opNativeHandle,
      TFE_TensorHandle[] outputNativeHandles,
      String type,
      String name); @Override String name(); @Override String type(); @Override int numOutputs(); @Override int outputListLength(final String name); @Override int inputListLength(final String name); @Override TFE_TensorHandle getUnsafeNativeHandle(int outputIndex); @Override Shape shape(int outputIndex); @Override DataType<?> dtype(int outputIndex); @Override Tensor<?> tensor(int outputIndex);  }### Answer:
@Test public void numOutputs() { try (EagerSession session = EagerSession.create()) { Ops tf = Ops.create(session); EagerOperation op = opBuilder(session, "UniqueWithCountsV2", "unq") .addInput(tf.constant(new int[]{1, 2, 1}).asOutput()) .addInput(tf.constant(new int[]{0}).asOutput()) .setAttr("out_idx", TInt32.DTYPE) .build(); assertEquals(3, op.numOutputs()); } }