var B = { foo: function (original) { console.log("Foo B"); original(); }.enhance() }; var C = { foo: function () { console.log("Foo C"); } }; var A = SC.Object.extend(C, B, { foo: function (original) { console.log("Foo A"); original(); }.enhance() }); A.create().foo();