PDA

Просмотр полной версии : Не понимаю значение кода!


Lyso
23.10.2010, 18:28
package zoo {
public class VirtualZoo {
public function VirtualZoo(){
var pet = new VirtualPet("Stan");
}
}
}


package zoo{
internal VirtualPet{
internal var petName;

public function VirtualPet(name) {
this.petName = name;
}
}
}


Читаю книгу Мука о ActionScript 3.0 На самом начале загвоздка, что в этом коде, где и как? Каким образом и что к чему? Объясните по строчкам пожалуйста... :rtfm:

mayakwd
23.10.2010, 18:33
в той самой книжке которую вы читаете расписано настолько подробно, что добавить совершенно нечего.

Zebestov
23.10.2010, 18:35
Думаю там вокруг этого кода много текста. Перечитывай по 100 раз — и откроется.
А если ничего не получится, то либо Мук не умеет писать учебники, либо тебе стоит найти себе другое занятие.

Lyso
23.10.2010, 18:37
Я не понимаю только 3 строчки.. Если быть точным:

var pet = new VirtualPet("Stan");


и


public function VirtualPet(name) {
this.petName = name;

не понимаю что это значит...

Добавлено через 1 минуту
В первой мы создаём переменную, это я понял, переменная равна и всё... зачем "new"? Что занчит параметр в круглых скобках...

Добавлено через 9 минут
Ау.. Помогите..

deamoK
23.10.2010, 18:50
ключевое слово new вызывает конструктор класса, в данном случае VirtualPet, параметр передается конструктору...
думаю стоит сначала прочитать об основах ООП..

Lyso
23.10.2010, 18:51
Ладно, начинаю эту строчку понимать, а другие 2?

TWETTI
23.10.2010, 19:02
deamoK, помимо того, что ключевое слово new вызывает конструктор класса, оно ещё создает экземпляр класса.
Lyso, в 1 строчке ты создаешь экземпляр класса VirtualPet, т.е ты создаешь нового животного. В скобках указан фактический параметр, который обозначает имя животного. Вторая строчка это конструктор класса VirtualPet. Конструктор будет вызываться как только создан экземпляр класса. Далее: VirtualPet(name). name - это формальный параметр. Переменной name будет присвоено значение фактического параметра. В нашел случае "Stan". У каждого экземпляра свои значения переменных. У класса VirtualPet, есть переменная экземпляра petName. В 3 строчке ты присваиваешь переменой экземпляра petName значение переменной name, то есть "Stan".

Lyso
23.10.2010, 19:08
Спасибо, теперь разобрался!