Показать сообщение отдельно
  #7 (permalink)  
Старый 24.10.2014, 23:13
Аспирант
Отправить личное сообщение для Voronar Посмотреть профиль Найти все сообщения от Voronar
 
Регистрация: 15.02.2013
Сообщений: 55

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, а я хочу обойтись минимальными затратами памяти.

Последний раз редактировалось Voronar, 24.10.2014 в 23:45.
Ответить с цитированием