-2



Iamは、継承を使用してライブラリシステムを実装する、割り当て用の単純なJavaプログラムを作成しています。Entryという名前のクラスと、それを拡張する他の2つのクラス(本とジャーナル)があります。

すべてが正常に動作します。

次に、プログラム全体をテストするクラスを作成する必要があります。このクラスは、配列を使用して要素(システムに追加する本またはジャーナル)を格納する必要があります。追加する要素の数はわかりませんが、それらの配列を宣言する必要があります(私のエントリは本またはジャーナルのいずれかになります)私の質問は次のとおりです:この配列はエントリ配列である必要があります(私が推測するように)そしてそうであれば、たとえば本を追加したい場合は追加の要素その本にはどこに保管されますか?

前もって感謝します。

4

2 に答える 2

1

Entryはい、配列に追加する必要があります。拡張しているため、配列にBookインスタンスを追加できます。配列から取得した後にのプロパティまたはメソッドにアクセスするには、 にキャストする必要があります。EntryEntryBookEntryBook

Entry[] entries = new Entry[5];
entries[0] = new Book();
Book aBook = (Book)entries[0];
aBook.getBookTitle();
于 2012-12-07T02:46:07.310 に答える
1

エントリー用にこの配列を宣言する必要があります

Entry array[] = new Entry[10];
array[0] = new book();
array[1] = new journal();

それはうまくいきます。

Javaでは、変数に実際のオブジェクトはありませんが、それへのポインタがあります。そのため、オブジェクトに必要なメモリを要求する新しいオブジェクトを作成する必要があります。

于 2012-12-07T02:46:18.707 に答える