Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.03.2011, 07:51
sl1p вне форума Посмотреть профиль Отправить личное сообщение для sl1p Найти все сообщения от sl1p
  № 1  
Ответить с цитированием
sl1p

Регистрация: Mar 2011
Сообщений: 6
По умолчанию getter & setter

Читал книгу, не могу найти пока что где это было, но там объяснялось как можно было сделать удобный геттер сеттер.. К примеру:

Код AS3:
class Boo
{
        private var name = 'Boo';
 
    public function get name()
    {
        return this.name;
    }
}
Но...

Код:
D:\FLASH\Projects\vzoo\src\zoo\Zoo.as, Line 16	1023: Incompatible override.
как же тогда?

Старый 20.03.2011, 13:43
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 2  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Код AS3:
public class Boo
{
    private var _name = 'Boo';
 
    public function get name():String
    {
        return this._name;
    }
 
    public function set name(value:String):void
    {
        this._name = value;
    }
}

Старый 20.03.2011, 13:49
CrazyFlasher вне форума Посмотреть профиль Отправить личное сообщение для CrazyFlasher Найти все сообщения от CrazyFlasher
  № 3  
Ответить с цитированием
CrazyFlasher
 
Аватар для CrazyFlasher

Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,181
зачем this?
__________________
Flash Developer
Папа TDP4 Team Battle

Старый 20.03.2011, 13:52
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 4  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Цитата:
итал книгу, не могу найти пока что где это было
Страница 110.
__________________
тут я

Старый 20.03.2011, 14:22
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 5  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Цитата:
Сообщение от CrazyFlasher Посмотреть сообщение
зачем this?
Мне так понятнее.

Старый 20.03.2011, 15:56
iCluster вне форума Посмотреть профиль Отправить личное сообщение для iCluster Найти все сообщения от iCluster
  № 6  
Ответить с цитированием
iCluster

Регистрация: Oct 2010
Адрес: PNZ
Сообщений: 20
Ммм.. не совсем понятно, отчего у вас ошибка в классе Zoo.as, а вы выкладываете class Boo.
Судя по ошибке у вас в классе происходит переопределение метода родительского класса. Проверьте нет ли в родительском классе методов с таким названием. Попробуйте использовать override или изменить имя метода.

Старый 20.03.2011, 16:40
VitaliyKrivtsov вне форума Посмотреть профиль Отправить личное сообщение для VitaliyKrivtsov Посетить домашнюю страницу VitaliyKrivtsov Найти все сообщения от VitaliyKrivtsov
  № 7  
Ответить с цитированием
VitaliyKrivtsov
 
Аватар для VitaliyKrivtsov

блогер
Регистрация: Apr 2010
Сообщений: 99
Записей в блоге: 5
Отправить сообщение для VitaliyKrivtsov с помощью ICQ Отправить сообщение для VitaliyKrivtsov с помощью Skype™
iCluster,
Код AS3:
D:\FLASH\Projects\vzoo\src\zoo\Zoo.as, Line 16	1023: Incompatible override.
так - то ошибка действительно левая, но класс Boo наследуется только от объекта, классом Zoo там и не пахнет а значит переопределение свойств или методов и не может быть.
Ошибка выскакивает лиш потому что имя get/set метода совпадает с приватной переменной класса
Код AS3:
private var name = 'Boo';

Старый 20.03.2011, 17:42
sl1p вне форума Посмотреть профиль Отправить личное сообщение для sl1p Найти все сообщения от sl1p
  № 8  
Ответить с цитированием
sl1p

Регистрация: Mar 2011
Сообщений: 6
Цитата:
Сообщение от udaaff Посмотреть сообщение
Код AS3:
public class Boo
{
    private var _name = 'Boo';
 
    public function get name():String
    {
        return this._name;
    }
 
    public function set name(value:String):void
    {
        this._name = value;
    }
}
т.е. я так понял имя функции(get x) должно отличаться от имени переменной?..

Старый 20.03.2011, 17:48
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 9  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Цитата:
Сообщение от sl1p Посмотреть сообщение
т.е. я так понял имя функции(get x) должно отличаться от имени переменной?..
Конечно.

Старый 20.03.2011, 17:51
sl1p вне форума Посмотреть профиль Отправить личное сообщение для sl1p Найти все сообщения от sl1p
  № 10  
Ответить с цитированием
sl1p

Регистрация: Mar 2011
Сообщений: 6
класс ничего не наследует) я написал просто пример когда возникает ошибка)

хм не совсем удобно.. удобнее было бы если бы можно было на вызов переменной навесить своего рода заглушку ввиде геттера если уже в существующем классе необходимо будет внести какието изменения.. Но придётся менять имя переменной


Последний раз редактировалось udaaff; 20.03.2011 в 18:03.
Создать новую тему Ответ Часовой пояс GMT +4, время: 07:57.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 07:57.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.