🤔 継承を知っていますか?

継承では、既存のクラスの動作を再利用、拡張、変更する新しいクラスを作成することができます。 既存のクラスはスーパークラスと呼ばれ、新しく作成するクラスは派生クラスと呼ばれます。 Dartでは、スーパークラスは1つしか継承できませんが、継承は推移的です。 もし、class Hatchclass Carから派生し、このクラスがclass Vehicleから派生した場合、HatchはVehicleから派生します。

class Car extends Vehicleの場合、class Vehicleで実装したプロパティ、変数、関数はすべてclass Carで利用できます。

スーパークラスの関数も上書き可能というわけですね。 あるクラスのより具体的なバージョンを作成したいときに extends を使用します。

2⃣️ implements

の使用

例えば、独自の Car クラスを作成して、Vehicle クラスのすべてのプロパティ、変数、関数を継承せず、Vehicle タイプのみを継承したいとします。 これを行うには、Car クラスは Vehicle インターフェイスを実装する必要があります。

Dart では複数のクラスまたはインターフェイスを実装できます。

✍️例

鳥と鴨を実装しなければならないと想像します、どちらも動物ですが鳥は飛ぶだけ、鴨は飛ぶと泳げるということです。

まず、スーパークラスと動作を作成します。

次に、BirdDuckを作成し、適切な動作を実装します。 この方法では、ビヘイビア実装を継承することはできません。 これらのビヘイビアのコードを再利用する方法はあるのでしょうか? はい、次に見ていきましょう!

3⃣️ with

を使う

Mixin は異なるタイプの構造で、キーワード with とともにのみ使用でき、共通のコードスニペットを含めるために使用します、私は、コードを再利用すると言いたいです。

Mixin が以前の実装をどのように行うかを説明します。

望むなら abstract classmixin に置き換えることができます。 ミキシンは、スーパークラスの上にミキシンの実装を置くことで、新しいクラスを作成することができます。

✌️Thanks

これが私のMediumでの最初の話です、気に入っていただけたでしょうか😃。

Mixin についての素晴らしい話を提供してくれた Romain Rastel に感謝したいと思います。

コメントを残す

メールアドレスが公開されることはありません。