Last active
March 19, 2017 02:31
-
-
Save ktutnik/c7f9ed2b9c7f58f22807ba4aab4fcea3 to your computer and use it in GitHub Desktop.
default method
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
interface IManusia { | |
IPakaian Bawahan {get; set} | |
IBagianTubuh Kaki {get; set;} | |
IKemaluan Titit {get; set;} | |
} | |
interface ILakiLaki : IManusia{ | |
default void Ngenceh(){ | |
Bawahan.Find("Resleting").Buka() | |
Kaki.Ngangkang() | |
Titit.Curr() | |
} | |
} | |
interface IPerempuan : IManusia{ | |
default void Ngenceh(){ | |
Bawahan.Angkat() | |
Kaki.Jongkok() | |
Titit.Curr() | |
} | |
} | |
class Joni : ILakiLaki{ | |
} | |
class GusLeo: ILakiLaki{ | |
} | |
class Susi : IPerempuan{ | |
} | |
//laki-laki yang seperti perempuan | |
class JoniSulistyawati : ILakiLaki, IPerempuan{ | |
override default Ngenceh(){ | |
ILakiLaki.base.Ngenceh() | |
} | |
} | |
//perempuan yang seperti laki-laki | |
class SantiSuwiryo : ILakiLaki, IPerempuan{ | |
override default Ngenceh(){ | |
IPerempuan.base.Ngenceh() | |
} | |
} | |
//keuntungannya Joni, dan GusLeo tidak perlu | |
//membuat implementasi sendiri-sendir | |
//kalo pake metode lama implementasi di interface harus sendiri sendiri | |
//atau bikin lagi satu baseclass | |
* EDIT | |
kalo pake metode lama, kayaknya bakal lebih sulit. | |
1. Supaya Joni, Leo tidak melakukan redundant di method Ngenceh maka bikin baseclass LakiLaki | |
2. Demikian halnya untuk Susi | |
3. untuk JoniSulistyawati dia harus di inherit dari baseclass LakiLaki, implement IPerempuan | |
4. Untuk SantiSuwiryo inherit baseclass Perempuan, implement ILakiLaki | |
hirarki kelasnya jadi lebih banyak kalo pake metode lama. | |
JoniSulistyawati dan SantiSuwiryo tidak bisa memilih dengan bebas, implementasi mehtod mana yang akan dia pilih, karena | |
implementasinya sudah ditentukan secara "baku", dia itu Laki-laki atau Perempuan. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment