[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: JavaScript! Вопрос по ООП
Stasonix
допустим есть класс example

function example(){
this.init = function(name){
this.name = name;
}
this.sayName = function(){
alert(this.name);
}
}


var ex = new example();
ex.init("Andy");
ex.sayName();


тут все очевидно, никаких премудростей нету, создается объект класса example, при вызове метода init устанавливается имя объекта, при вызове sayName выводится имя Alert'ом.

Как создать потомок(экземпляр,наследник(даже как и выразить правильно затрудняюсь описать)) класса example, и переопределить метод sayName, пускай он теперь ни Alert'ом выводит имя, а в консоль записывает?



Спустя 5 минут, 39 секунд (23.02.2012 - 13:12) redreem написал(а):
может так:

ex.sayName = function() {
alert('to console: ' + this.name);
}

Спустя 2 минуты, 50 секунд (23.02.2012 - 13:14) Stasonix написал(а):
ну почти, я вот подумал зачем тогда нужны фреймворки для конструкторов классов, напр. как тут написано?

Спустя 15 минут, 36 секунд (23.02.2012 - 13:30) sharki написал(а):
function example(){
this.init = function(name){
this.name = name;
}
this.sayName = function(){
alert(this.name);
}
}



function exampleChild(){
this.sayName = function(){
console.log(this.name);
}
}



exampleChild.prototype = new example();

var ex = new exampleChild();
ex.init("Andy");
ex.sayName();


Спустя 8 минут, 15 секунд (23.02.2012 - 13:38) Stasonix написал(а):
спасибо, я думаю с параметрами я сам разберусь.

Спустя 1 час, 11 минут, 6 секунд (23.02.2012 - 14:49) KonstantinK написал(а):
вот тут http://javascript.ru/tutorial/object/inheritance стоит почитать
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.