スッキリ分かるJava入門 9日目
今日やったこと
抽象クラス、インターフェースの時間ダァ!!
覚えておきたいこと
親クラスの、必ず実装してほしいけど処理はそれぞれってメソッド、abstractで抽象メソッドにしようぜ!!これをするからにはクラスもabstractで抽象クラスにしなきゃダメなのよ。そすることで親クラスがnewされる悲しい事故は起こらない!!逆に言うと、抽象クラスでも具体的なメソッド作っとけば子クラスは継承しなくてもよい。フツーの継承
これが抽象メソッドだ。カッコなし、シンプル!
public abstract void run();
特に抽象度の高いクラスはabstractじゃなくてinterface!全部抽象メソッド。定数は定義してもよい。
interfaceのメソッドは継承大前提なので、言われなくてもpublicなabstractでいてくれる。ので、public abstractを書かなくてもOKです👽👍
void run();
自作の型=自作のクラス!よくあることなので怖がらないこと、ただこれに入れて返してちょ、ってだけなので!!
extendsは継承してクラス追加する用(つまり、流用したいアナタへ)implementsは処理を確定して実装する用(つまり、ハイハイ言われた通りにこれを実装しますねということ)同時に使ってもいいのよ!ちょっと混乱するけど・・!あたりまえだけどこれらの対象はフツーのclassだよ。
感想
親クラスにまつわる人間味あふれる心配事にかなりページ数割かれていてオモシロわかりやすかった。コメントこーいう実装はまさに直近の案件でありました。設計方針を自分で考えられるようになればいいねえ・・そんで!!練習問題が骨太になってきた!!時間かかるのも致し方なし!!
ホスィーアプリ
- ゆたかなラジオ暮らしに向けたデスクトップアプリ
- あらかじめ聴きたい番組を設定
- 聞きたい番組の時間近づくと通知
- 周波数教えてくれる
- どんな回だったか一言メモ書ける