2016-11-13 8 views
-4

new()の代わりにクラスで代入演算子を使用する方法javaのラッパークラスのように?ラッパークラスのよう代わりに新しいクラスの()と代入演算子を使用する方法

Integer i = 3; 

newClass c = 3; // didn't work 

newClass C = 3。 - > did not work

これを行うC++で演算子がオーバーロードされていることがわかりましたが、Javaの代入演算子をどのようにオーバーロードするのですか?

+1

これは代入演算子ではなく、等価演算子です。 – Carcigenicate

+0

あなたはちょうどそれをjavaで行うことはできません.... –

+1

Javaの演算子はオーバーロードできません。 'Integer'で動作する唯一の理由は、自動ボクシングのためです。 – 4castle

答えて

0
  1. これは代入演算子ではありません。

  2. いいえ、できません。 new(またはリフレクション)を使用する必要があります。

  3. Javaに演算子のオーバーロードがありません。 (プリミティブのオートボクシングは、言語に組み込まれているので、あなたがInteger i = 3;を行うことができた理由は、あるないIntegerクラスが過負荷状態にして何かをするために。)整数の

0

、次のように割り当てることができます。

Integer i = 3; //or int i =3; 
クラスタイプ用として、あなたがそれを行うことはできません

newClass c = 3; 

むしろあなたは(新しい演算子で)オブジェクトを作成し、参照Vに割り当てることができますariable次のようにここ

Product product = new Product();//example 

productがヒープ上に新しいオブジェクト(new Product())に割り当てる基準ととなります。

+0

ダウン投票者、コメントを残してください – developer

+0

あなたがそれが私だったと思わない限り、してください。 :-) –

関連する問題