私はこのコードをオンラインで見つけました。ここでは、クラスの外にプライベートコンストラクターを持つクラスをインスタンス化しています。これがどのように機能するのか理解できません。以前に読んだことから、クラスでプライベートコンストラクターを使用して、クラス外でインスタンス化できないようにしています。
public final class A extends B {
private A(Something, Something)
{
//Something
}
public void someMethods()
{
//Something
}
}
public final class B {
private A a;
public void someMethod()
{
final ObjectInputStream objectInputStream = new ObjectInputStream(
new ByteArrayInputStream(buffer.toByteArray()));
a = (A) objectInputStream.readObject();
objectInputStream.close();
a.someMethods();
}
}
ここで何が起こっているのか正確に理解したいだけですか?読み上げてみましたObjectInputStream
が、何も得られませんでした。