![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Modus ponens
|
function Class1(){
var pa = this;
this.a = 4;
function pMetA(){
pa.a=10;
}
function pMetB(){
Class1.prototype.propFor__etc = "no more __etc";
}
function pmet1(){
pMetA();
}
function pmet2(){
trace("do pmet2");
}
function pmet3(){
pMetB();
}
this.met1=pmet1;
this.met2=pmet2;
this.met3=pmet3;
Class1.prototype.met4 = pmet1;
Class1.prototype.propFor__etc = "for__etc";
}
var c = new Class1();
c.pMetA = function(){trace("doing some funn stuff here")};
c.pMetA();
![]() При чем тут внешние функции? я вполне себе легитимно создал метод у этого класса, никакую внешнюю функцию я не использовал =) function Class1(){
var pa = this;
this.a = 4;
function pMetA(){
pa.a=10;
}
function pMetB(){
Class1.prototype.propFor__etc = "no more __etc";
}
function pmet1(){
pMetA();
}
function pmet2(){
trace("do pmet2");
}
function pmet3(){
pMetB();
}
this.met1=pmet1;
this.met2=pmet2;
this.met3=pmet3;
Class1.prototype.met4 = pmet1;
Class1.prototype.propFor__etc = "for__etc";
}
Class1.prototype.ImLookin4ThePrivateMethod = function(){
trace("Where in God's name did you put it? " + this.pMetA);
}
var c = new Class1();
c.ImLookin4ThePrivateMethod(); // output: Where in God's name did you put it? undefined
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Jun 2005
Сообщений: 147
|
Вы задрали со своими фишками. Вы переопределили метод в объекте, создали в этом объекте новый метод. А для запрета переопределения существует ASSetPropFlags!
Создайте новый экземпляр класса и увидите, что никуда pMetA() не делся.
__________________
видеоигры - высший вид искусства |
|
|||||
|
Modus ponens
|
Я. Пишу. Часто. Вне тела класса. Мне так нравися!
Я создаю неймспейсы в отдельных файлах, в которых вообще нет упоминаний о классе. Я пишу статические константы типа номер версии проэкта в отдельном файле, в котором нет и упоминания о классе. Я пишу переменные инициализаторы вне тела класса-синглтона чтобы сделать их недоступными другим классам. Я пишу служебные прокси классы вне тела класса - их просто больше негде писать =) Я пишу дополнительные служебные классы вне тела класса если не могу наследовать 1 класс от двух разных, а очень нужно =) И все это ООП! ![]() Дерут, простите... это что-то из зоологии =) Я с таким же успехом могу и в прототипе его удалить переназначить, и ничто мне не помешает использовать все тот же ASSetPropFlags для этого =)
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Jun 2005
Сообщений: 147
|
Создание нескольких классов в одном файле, вы называете "пишу вне тела класса". Я могу задать вам такой же тупой вопрос. Попробуйте из вспомогательного класса, получить доступ в тело главного класса (причем к паблик, интернал свойствам, а не приват). Так вы никогда такого не зделаете без создания экземпляров классов. В AS1 - также.
По поводу вашего поста, могу лишь отослать к своему посту - #333 Цитата:
Что вы мне пытаетесь доказать... Я сам сижу на AS3... что ООП AS3 лучше? - я итак это знаю...
__________________
видеоигры - высший вид искусства Последний раз редактировалось riden; 30.06.2008 в 01:30. |
|
|||||
|
.grin! wuz here
|
ад кромешный. от терминогогии "локальная фцнкция" или "приватный метод" суть не меняется. наружу видно только то, что ты хочешь дать. при чом тут ASSetPropFlags??? при чем тут метаязыки?
от того что кто-то в своё время недоучил ас1 он хуже не становится... всё то же и про ас3...
__________________
Breakcore them all! |
|
|||||
|
Регистрация: Jun 2005
Сообщений: 147
|
Цитата:
Цитата:
И здесь тоже самое. Последний раз редактировалось riden; 30.06.2008 в 06:04. |
|
|||||
|
Modus ponens
|
Создание нескольких классов в одном файле, вы называете "пишу вне тела класса". Я могу задать вам такой же тупой вопрос. Попробуйте из вспомогательного класса, получить доступ в тело главного класса (причем к паблик, интернал свойствам, а не приват). Так вы никогда такого не зделаете без создания экземпляров классов. В AS1 - также.
>> А разве я утверждал, что это возможно? - нигде и ни разу =) В АС1 даже аналога нет - не знаю с чем вы сравниваете =) Значит в AS1 - не ООП? Логично. >> Нет, не логично, я еще раз вам напоминаю, я ни единого слова не сказал про ООП в АС1 - это ваши фантазии =) Что вы мне пытаетесь доказать... Я сам сижу на AS3... что ООП AS3 лучше? - я итак это знаю... >> Я вам пытаюсь доказать, что приватных свойств в АС1 не существует. Вы уверенно уходите от признания этого факта =) Вот, пожалуйста =) и нет больше такого метода =)
__________________
Hell is the possibility of sanity Последний раз редактировалось wvxvw; 30.06.2008 в 02:05. |
|
|||||
|
Регистрация: Jun 2005
Сообщений: 147
|
2 KidsKilla:
Цитата:
Но если бы он так сделал с паблик методом... То есть реально бы совершил переопределение ( а он это и хотел показать) - тогда, можно посоветовать только ASSetPropFlags.
__________________
видеоигры - высший вид искусства |
|
|||||
|
Регистрация: Jun 2005
Сообщений: 147
|
Цитата:
Цитата:
ОФФТОП/: у меня сто сообшений , с 50 с чем-то нафлудил за день практически/ОФФТОП
__________________
видеоигры - высший вид искусства Последний раз редактировалось riden; 30.06.2008 в 01:54. |
|
|||||
|
.grin! wuz here
|
Цитата:
wvxvw, "Я вам пытаюсь доказать, что приватных свойств в АС1 не существует." попробуйте доказать что земля квадратная. тоже нормальное занятие...
__________________
Breakcore them all! |
![]() |
![]() |
Часовой пояс GMT +4, время: 06:36. |
|
|
« Предыдущая тема | Следующая тема » |
|
|