function Interface() {};
Interface.prototype.fd = "file descriptor";
Interface.prototype.open = "virtual function";
Interface.prototype.close = "virtual function";
function Class1() {};
function Class2() {};
Class1.prototype = new Interface();
Class2.prototype = new Interface();
Class1.prototype.open = function()
{
alert("open1");
};
Class1.prototype.close = function()
{
alert("close1");
};
Class2.prototype.open = function()
{
alert("open2");
};
Class2.prototype.close = function()
{
alert("close2");
};
var obj1 = new Class1();
var obj2 = new Class2();
obj1.open();
obj2.open();
Работает так, как я хочу, но в итоге мне нужно создавать для каждого наследника новый экземпляр Interface, а я хочу обойтись минимальными затратами памяти.