Dart
Dartで動的ポリモーフィズムをしてみる
Dartはクラスベースのオブジェクト指向言語なので、継承もポリモーフィズムも王道の書き方で行える。
JavaScriptの置き換え言語として誕生した経緯があるので、型名を除けばほぼJavaScriptのように書けるが、少しJavaっぽいところもある。
オーバーライドする側には「@override」を書くのが慣習だが、これは必須ではなく書かなくても動作する。(後で読んだときに分かりやすいので、書く癖を付けておくと良いと思う)
Javaはオーバーライドされたくないメソッドに「final」を前置しておくとコンパイラが検出してくれるが、そういう機能はない。(ここはJavaScriptっぽい)
なので「うっかりオーバーライド」は起こってしまう可能性がある。
|