Javaの復習のために「Java言語プログラミングレッスン 第3版」の14章 インタフェース と 17章 パッケージ を読みました。
曖昧だった個所が明確になったので忘れないようにメモしておきます。
・extendsの後には1つしか書けずimplementsの後には複数書けると丸暗記していたが不正確だった。Javaでは実装は単一継承のみで名前は多重継承可能なので、インタフェースがインタフェースを継承する場合はextendsの後に複数(のインタフェース名を)書ける。
・インタフェースはインスタンスを作れないがインタフェースの配列は作れる。その際の表記が似ている(配列を作るのにnewを使用)ので注意。
・packageの後に書くのはパッケージ名だが、importの後についパッケージ名を書かないように注意。
・import aaa.*はパッケージaaa内のクラスとインタフェースに合致という意味であってパッケージaaaのサブパッケージに合致という意味ではない。
・パッケージはクラス階層とは無関係。
・パッケージaaaとサブパッケージaaa.bbbの名前空間は無関係。
曖昧だった個所が明確になったので忘れないようにメモしておきます。
・extendsの後には1つしか書けずimplementsの後には複数書けると丸暗記していたが不正確だった。Javaでは実装は単一継承のみで名前は多重継承可能なので、インタフェースがインタフェースを継承する場合はextendsの後に複数(のインタフェース名を)書ける。
・インタフェースはインスタンスを作れないがインタフェースの配列は作れる。その際の表記が似ている(配列を作るのにnewを使用)ので注意。
・packageの後に書くのはパッケージ名だが、importの後についパッケージ名を書かないように注意。
・import aaa.*はパッケージaaa内のクラスとインタフェースに合致という意味であってパッケージaaaのサブパッケージに合致という意味ではない。
・パッケージはクラス階層とは無関係。
・パッケージaaaとサブパッケージaaa.bbbの名前空間は無関係。