![]() |
|
||||||||||
|
|||||
|
Считайте, ... что это [man]ual.
Итак ... ... ... в основном мысли из книги Гради Буча "Обьекно-ориентированный анализ и проектирование" советую!!! Концепции ООП реализованные в FMX.
//определяем суперкласс
function SuperClass()
{
trace("construction of class: SuperClass");
this.property = "property of SuperClass";
this.method = function()
{
trace("method of class: SuperClass");
trace(this.property);
}
}
//определяем подкласс
function SubClass()
{
this.__proto__ = new SuperClass();
trace("construction of class: SubClass");
this.method = function()
{
this.__proto__.method();
trace("method of class: SubClass");
}
}
//работаем
trace("SuperClass--------------");
super = new SuperClass();
super.method();
trace("SuperClass--------------");
trace("SubClass--------------");
sub = new SubClass();
sub.method();
trace("SubClass--------------");
SuperClass-------------- construction of class: SuperClass method of class: SuperClass property of SuperClass SuperClass-------------- SubClass-------------- construction of class: SuperClass construction of class: SubClass method of class: SuperClass property of SuperClass method of class: SubClass SubClass-------------- |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
ой какой ты умныыый :)
прям страшно становится :) а в хелп посмотреть ты конечно не догадался ? :) |
|
|||||
|
я, короче, экспериментировал с переводом на руссий документации по FMX и теперь у меня ни русской ни английской нету
![]() а субж затеял только из-за того, что не нашёл ничего о виртуальных функциях в обсуждении урока на эту же тему ... |
|
|||||
|
super - это супер ... вот новая версия вчерашнего кода:
//определяем суперкласс
function SuperClass()
{
this.create();//пусть это стандартный конструктор
}
//определяем конструктор
SuperClass.prototype.create = function()
{
trace("construction of class: SuperClass");
}
//это, что называется "some_method_or_property"
SuperClass.prototype.method = function()
{
trace("method of class: SuperClass");
}
//аналогично с подклассом
function SubClass()
{
this.create();
}
SubClass.prototype = new SuperClass();// !!!
SubClass.prototype.create = function()
{
super.create();
trace("construction of class: SubClass");
}
SubClass.prototype.method = function()
{
super.method();
trace("method of class: SubClass");
}
trace("-----------------------------");
one = new SuperClass();
one.method();
trace("-----------------------------");
two = new SubClass();
two.method();
trace("-----------------------------");
|
|
|||||
|
заметно красивше
... |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
...ты кого-то хотел удивить раскидыванием пальцев ? :))
извини :) могу тебя огорчить :) |
|
|||||
|
тебя не понимаю, почему же ты думаешь что это "раскидывание пальцев", я всё это положил в форум для пользы (если кончно это кому-нибудь надо
) если бы я зашёл на форум с месяц назад и увидел этот топик, то помог бы он мне ОЧЕНЬ сильно ...а вот ты показываешь себя не с лучшей стороны, необоснованная критика понимаш ![]() у Ричарда Баха есть рассказик "Иллюзии", дык вот, цитата: "Самые простые вопросы на самом деле самые сложные. Где ты родился? Где твой дом? Куда ты идешь? Что ты делаешь? Думай об этом время от времени и следи за тем, как меняются твои ответы." |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
для ЧЬЕЙ пользы, можно поинтересоваться ? :)))
твои слова: Цитата:
пользы не видать совсем: — в первом посте код не откомментирован, поэтому абсолютно не понятно КАК он иллюстрирует принцыпы ООП, которые ты привел выше... — во втором посте откоментированы простые вещи, но нет коментариев про собсно тему поста - указатель super. ... так что... ИМХО ты хотел показать, что разобрался в том, что написано в хэлпе, мол вот ты какой, северный олень :))) если я не прав - я готов это признать... но тебе придется объяснить мне, что в моих словах не так :))) Последний раз редактировалось Nox Noctis; 31.08.2002 в 22:32. |
|
|||||
|
мне обьяснять что такое ООП на примере FMX както даже неприятно было бы, я выложил исходники только как демонстрацию как ООП сделан на FMX (люди понимающие с первого взгляда разбурутся где предки где потомки, что и как)
(блин, заставляешь оправдываться )про super я узнал когда писал такое символическое имя, редактор подсветил синтакс, и узнал как им пользоваться не из хелпа, а маленько поэкспериментировав с Flash - компонентами (и чуть пораньше, чем ты свой топик об этом выложил )про северного оленя ты совсем палку загнул, на ACM'овских олмпиадах был? - нет, значит надо ещё думать кто олень ![]() Цитата:
![]() |
|
|||||
|
Регистрация: Feb 2001
Сообщений: 1,893
|
Мдя = function(){
trace( this(мдя =))); } |
![]() |
Часовой пояс GMT +4, время: 11:43. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|