現在、javaの入門書の書籍で勉強しているのですが、再読して配列を読んだ時に、New演算子の意味が少しわからなくなりました。
インスタンス化=newするという単語もありややこしいのですが、
<1>newするとメモリに領域が確保される
・クラスのインスタンス化 ※例1
・配列の生成 ※例2
など
<2>newをすれば確実にクラスのインスタンス化が行われる訳ではない
・配列の生成ではクラスのインスタンス化は行われていない※例2
という認識で合っていますでしょうか?
初歩的なところで恐縮ですが、ご教授いただければ幸いです。
java
1Date d= new Date();//※例1 2 3int[] a = new int[5];//※例2
ーーーーー補足説明ーーーーー
※質問の意図が上手く伝わっていないようなので、用語を「実体化」→「インスタンス化」と変更しました。
改めて、今回の質問の要点をまとめると
「newで行う配列の生成は書き方は似ているがクラスのインスタンス化とは無関係である」かどうか?という内容です。
自動で埋まる0やnullなどの初期値や、改めて3や”aaa”など意味ある値を埋める初期化などは理解しているつもりです。
また、その後皆様のお力添えで様々な回答をいただき、「配列もobjectクラスを継承したオブジェクトであり、配列の生成とクラスのインスタンス化は内部的に同じ事をしている」という結論に至り解決しました。
配列がオブジェクトであるとは知らず、また実体化と表現したことで初期化とも取れるような誤解を招くような内容になり申し訳ありませんでした。
回答5件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/03/08 06:03