new()の代わりにクラスで代入演算子を使用する方法javaのラッパークラスのように?ラッパークラスのよう代わりに新しいクラスの()と代入演算子を使用する方法
Integer i = 3;
newClass c = 3; // didn't work
newClass C = 3。 - > did not work
これを行うC++で演算子がオーバーロードされていることがわかりましたが、Javaの代入演算子をどのようにオーバーロードするのですか?
new()の代わりにクラスで代入演算子を使用する方法javaのラッパークラスのように?ラッパークラスのよう代わりに新しいクラスの()と代入演算子を使用する方法
Integer i = 3;
newClass c = 3; // didn't work
newClass C = 3。 - > did not work
これを行うC++で演算子がオーバーロードされていることがわかりましたが、Javaの代入演算子をどのようにオーバーロードするのですか?
これは代入演算子ではありません。
いいえ、できません。 new
(またはリフレクション)を使用する必要があります。
Javaに演算子のオーバーロードがありません。 (プリミティブのオートボクシングは、言語に組み込まれているので、あなたがInteger i = 3;
を行うことができた理由は、あるないInteger
クラスが過負荷状態にして何かをするために。)整数の
、次のように割り当てることができます。
Integer i = 3; //or int i =3;
クラスタイプ用として、あなたがそれを行うことはできません
:
newClass c = 3;
むしろあなたは(新しい演算子で)オブジェクトを作成し、参照Vに割り当てることができますariable次のようにここ
Product product = new Product();//example
、product
がヒープ上に新しいオブジェクト(new Product()
)に割り当てる基準ととなります。
ダウン投票者、コメントを残してください – developer
あなたがそれが私だったと思わない限り、してください。 :-) –
これは代入演算子ではなく、等価演算子です。 – Carcigenicate
あなたはちょうどそれをjavaで行うことはできません.... –
Javaの演算子はオーバーロードできません。 'Integer'で動作する唯一の理由は、自動ボクシングのためです。 – 4castle