質問: new testdata(); testdataはセッション内に格納してあります。 また、testdataはnullのままだったり、実際に値が入っていたりもします。 nullのままだと不具合があるため、nullの場合は、インスタンスそのものを削除してしまいたいと考えています。 初歩的な質問ですみませんが、教えてください。 よろしくお願いいたします。
回答: > そのインスタンスがnullだとエラーが発生してしまうようです。 「インスタンス」という言葉で表しているものが違うんだと思うのですが、インスタンスはクラスを実体化したものなので、インスタンスがnullになることはありません。変数とか、インスタンスの中のフィールドの値がnullになることはありますけど。 また、大文字のnullにこだわっておられるところがjavaっぽくないなと思います。weblogicでは大文字のnullに特別な意味があるのでしょうか? > インスタンスが存在しない場合は自動的に作られるので問題ないのですが、 問題が発生する場合には、問題のあるインスタンスがどこかから参照されているのですよね? その参照をなくしてしまえば(nullを代入してしまえば)、問題を起こすインスタンスは存在しないのと同じことになるので、適切なインスタンスが自動的に作られるのでは? 逆に、c++のdeleteのような機能があったとしても、どこかからまだ参照されているままのインスタンスをdeleteしたら誤動作の原因になります。結局はその参照を消さなくてはいけないので、明示的なdelete操作が要らない分だけjavaのほうが簡単です。