=
ホーム
On Your Mark
ホーム
/
設計(Java)
/
【Java】 Effective Java 第二版 お勉強 抽象クラスとインターフェイス
2013年10月26日土曜日
Java
基本
設計(Java)
t
f
B!
P
L
# クラスとインターフェイス ## 今日 読んだところ P 91~95 ## 項目 抽象クラスよりインターフェイスを選ぶ
## 抽象クラスとインターフェイス 抽象クラスは、いくつかのメソッドに対して実装することを許され、
インターフェイスは、定義だけしかできない。
## インターフェイスは組み合わせが可能 Javaは多重継承がダメなので、抽象クラスは1つしか継承できない。
しかし、インターフェイスは複数実装することができる。
例えば、Singer と SongWriter というインターフェイスがいた場合、
両方を実装することで、SingerSongWriterを生成できる。
こういう本来の機能に対し任意の機能を組み合わせることをミックスイン(mix-in)という。
## インターフェイスとSkeletal Implementationを提供する Java APIでいうとAbstractSetやAbstractHash等。
いわゆるスケルトン実装と呼ばれるやつ。
インターフェイスで定義し、スケルトン実装はそれすべてを実装する。
こうすることで、インターフェイスと抽象クラスの利点を組み合わせることが可能。
## 擬似多重継承 スケルトン実装から作ったインスタンスをprivateで持って、
そのインタフェースを継承することで擬似的に多重継承することができる。
個人的にはあまり使わないような気がする。
## 発展について インターフェイスは最初に定義したら、影響が大きいので変更しにくい。
それに対して、抽象クラスはメソッド追加など変更が容易。
発展させるならば抽象クラスのほうが良い。
Translate
このブログを検索
ブログアーカイブ
►
2020
(38)
6月 2020
(6)
5月 2020
(10)
4月 2020
(10)
3月 2020
(4)
2月 2020
(5)
1月 2020
(3)
►
2019
(4)
1月 2019
(4)
►
2018
(23)
12月 2018
(3)
4月 2018
(11)
3月 2018
(9)
►
2014
(20)
7月 2014
(3)
1月 2014
(17)
▼
2013
(166)
12月 2013
(15)
11月 2013
(22)
10月 2013
(31)
9月 2013
(26)
8月 2013
(32)
7月 2013
(40)
今週の人気の記事
【考察】シンカリオン 名前の由来を考察 -運転士編-
【MySQL】文字列をバイト数で切り取る
【まとめ】GWはおうちでぬりえ 鉄道会社公式の電車ぬりえをまとめた
【まとめ】おうちでペーパークラフト 鉄道会社公式のペーパークラフトをまとめた
【考察】シンカリオン 名前の由来を考察 -キトラルザス編-
フォロワー
On Your Mark
QooQ
0 件のコメント:
コメントを投稿