あなたのクラス宣言は正しいです。(まったく関係のないことですが、慣例により、Java クラスは大文字で始める必要があります。つまり、クラスは Bob という名前にする必要があります。しかし、それは問題とは関係ありません...)
オブジェクトを作成し、パラメーターをコンストラクターに渡すための適切な構文は次のとおりです。
Bob test = new Bob(5);
追加に関しては、オペレーターと直接作業することはできません。オブジェクトに対する演算子の動作を指定できる言語はありますが、Java はその 1 つではありません。(これに関する詳細については、演算子のオーバーロードについて Google で調べることができます。)
加算タイプのものが必要な場合は、実際にはそのための関数を定義する必要があります。あなたの場合、できることは2つあります。
インスタンス関数を定義できます。
class Bob {
// The other stuff you listed, like the constructor and the private field
public Bob add(Bob other) {
return new Bob(value + (other == null ? 0 : other.value));
}
}
または、静的関数を定義できます。
class Bob {
// The other stuff you listed, like the constructor and the private field
public static Bob add(Bob one, Bob other) {
return new Bob((one == null ? 0 : one.value) + (other == null ? 0 : other.value));
}
}
最初のものは、あなたが呼び出す
test3 = test1.add(test2);
2 つ目は、次のように呼び出します。
test3 = Bob.add(test1, test2);