Dari apa yang saya tahu dari Scala dan Hack-
Mixin:
- Dapat memiliki status (mis. Properti instance)
- Hanya bisa memberikan metode konkret
- Dapat memiliki konstruktor, yang dipanggil dalam urutan yang sama dengan kelas mereka dicampur
- Jika
A
dicampurB
danC
,A instanceof B == false
danA instanceof C == false
Sifat:
- Hanya dapat memberikan metode, bukan negara
- Dapat mendeklarasikan metode abstrak, yang harus diterapkan oleh konsumen
- Tidak dapat memiliki konstruktor
- Jika
A
menerapkan sifatB
danC
,A instanceof B == false
danA instanceof C == false
Apakah ini benar atau saya kehilangan sesuatu? Apakah definisi ini akurat untuk bahasa OO atau hanya untuk yang disebutkan di atas?