Rene
03/05/2024, 4:44 PMinterface Membership{ fun benefits() }
abstract class FactoryMembership() { abstract fun create() : Membership }
class VipMembership() : Membership { override fun benefits(){ println("your benefits") }}
class VipMembershipFactory : FactoryMembership() { override fun create() = VipMembership() }
client code
val vipFactory : MembershipFactory = VipMembershipFactory()
val vipMembership : Membership = vipFactory.create()