Среда, 20 Ноября 2024, 14:41

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Вопрос про использование класса.
GavolotДата: Понедельник, 06 Февраля 2012, 00:21 | Сообщение # 1
Последователь Тени
Сейчас нет на сайте
Вот изучаю флэш уже третий день и пытаюсь разобраться вот в чем, я привык тестировать почти весь код, что предоставляют в книге.
И там написали про класс, который расширяет класс Array, вот пытаюсь разобраться, в теории я все понял, но вот на практике не могу понять:
Code

package
{
     

public class CustomArray extends Array
{
public static var arrayCountTotal:int = 0;
public var arrayNumber:int;
public function CustomArray()
{
arrayNumber = ++arrayCountTotal;
}
public function getArrayPosition():String
{
return ("Array " + arrayNumber + " of " + arrayCountTotal);
}
}

}

Вот все как положено, создал обычный стандартный пакет, он подгрузился, задача вот в чем, там пишут что переменная arrayCountTotal
отслеживает общее число экземпляров Объекта Array, ну я вроде создал пару Экземпляров Array, создал экхемпляр класса CustomArray
назвал его Custom и пытался вызвать функцию так:
trace(Custom.getArrayPosition());
Так как функция возвращает строку, я думал она должна вернуть мне колличество экземпляров массива, а оно чето возвращает мне Array 1 of 1
Может я что-то не так делаю. Я в теории вроде понял как это примерно должно работать, на практике я провалился))


В общем что-то делаю, но пока не пойму ни как :)
Тень - выражение основной сущности человека.


Сообщение отредактировал Gavolot - Понедельник, 06 Февраля 2012, 00:22
noTformaTДата: Понедельник, 06 Февраля 2012, 00:35 | Сообщение # 2
Ukrainian independent game developer
Сейчас нет на сайте
CustomArray наследует в себе класс Array, тоесть расширяет его.
У этого класса есть два свойства, публичное свойство arrayNumber, которое хранит в себе текущий номер массива, и публично статическое свойство arrayCountTotal, которое отвечает за количество экземплятор этого класса.

Есть два метода, сам конструктор, который во время создания устанавливает номер массива, и увеличивает общее количество объектов.

Второй метод - getArrayPosition, он возвщает инфомационную строку, в которой указан текущий номер массива, и общее количество объектов.

Вообще, код выще, это стремный быдло кодинг. Если это из книги, спали ее....


@noTformaT
GavolotДата: Понедельник, 06 Февраля 2012, 00:47 | Сообщение # 3
Последователь Тени
Сейчас нет на сайте
Да книга же для изучения синтаксиса Action Script 3.0)) То что кодинг возможно и быдло это да, но мне нужно понять все основные принципы и держать в голове)

В общем что-то делаю, но пока не пойму ни как :)
Тень - выражение основной сущности человека.
noTformaTДата: Понедельник, 06 Февраля 2012, 00:56 | Сообщение # 4
Ukrainian independent game developer
Сейчас нет на сайте
Quote (Gavolot)
Да книга же для изучения синтаксиса Action Script 3.0)) То что кодинг возможно и быдло это да, но мне нужно понять все основные принципы и держать в голове)

книга треш... еще какой... На примере:

var customArray1:CustomArray = new CustomArray();
var customArray2:CustomArray = new CustomArray();
var customArray3:CustomArray = new CustomArray();
trace(customArray2.getArrayPosition());

выведет Array 2 of 2; Вроде бы все норм....

Но, если написать так:

var customArray1:CustomArray = new CustomArray();
CustomArray.arrayCountTotal = 2245;
var customArray2:CustomArray = new CustomArray();
customArray2.arrayNumber = 999;
var customArray3:CustomArray = new CustomArray();
trace(customArray2.getArrayPosition());

выведет Array 999 of 2245;

Как-то не очень адеквытный результат... а вывод trace(customArray3.getArrayPosition()); вернет уже такую фигню, что мало не покажется....

А что за книга. Ибо за такое надо убивать, особенно если это новичкам дают...


@noTformaT
GavolotДата: Понедельник, 06 Февраля 2012, 01:27 | Сообщение # 5
Последователь Тени
Сейчас нет на сайте
Просто называется "программирование на Adobe Action Script 3.0 2008.pdf".

В общем что-то делаю, но пока не пойму ни как :)
Тень - выражение основной сущности человека.
noTformaTДата: Понедельник, 06 Февраля 2012, 01:30 | Сообщение # 6
Ukrainian independent game developer
Сейчас нет на сайте
Quote (Gavolot)
Просто называется "программирование на Adobe Action Script 3.0 2008.pdf".

это официальная пресса от адоб, ты точно правильно переписал код? просто открытые публичные свойства, как-то это странно. Завтра посмотрю что не так...


@noTformaT
GavolotДата: Понедельник, 06 Февраля 2012, 01:48 | Сообщение # 7
Последователь Тени
Сейчас нет на сайте
Ахахаха я ща сделал проверку, и сделал все так:
Code

var Custom3:CustomArray = new CustomArray();
CustomArray.arrayCountTotal = 2000;
var Custom4:CustomArray = new CustomArray();
Custom4.arrayNumber = 999;  
var Custom5:CustomArray = new CustomArray();
trace(Custom5.getArrayPosition());

И у меня выдало: Array 2002 of 2002)))

Добавлено (06.02.2012, 01:48)
---------------------------------------------
Кустом1 и кустом2 я удалил чуть не забыл.


В общем что-то делаю, но пока не пойму ни как :)
Тень - выражение основной сущности человека.
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг