Показать сообщение отдельно
Старый 25.09.2017, 20:45
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 61  
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Полиморфизм строится на переопределении, а то о чем говоришь ты — наличие одних свойств и отсутствие других — не имеет к нему отношения.
Полиморфизм это когда и мальчик и девочка имеют метод piss(), но реализуют его по-разному.
В твоем случае ты мог бы спокойно обращаться к .gender и вызывать этот метод, и если бы .gender хранил ссылку на экземпляр подкласса GenderMale, то выполнялся бы его метод, а GenderFemale делала бы это по-другому.
И тебе НИГДЕ не нужно было бы разбираться, мальчик там или девочка.

Добавлено через 20 минут
И еще. Когда ты пишешь "Wolsh сказал делать так, Wolsh сказал делать сяк" — Wolsh отвечает на ТВОИ вопросы. Я же не знаю всю подноготную. Мне, например, не кажется полезным разделение Гендера на Мужской и Женский, вроде как 1 и 0 было достаточно (к тому же позволяет расшириться, введя 2, 3 и 100500). А если бы в игре были еще и расы? Эльфы там, с "длиной ушей", орки с клыками, гномы — женщин которых никто никогда не видел?
Как справедливо заметил Кейси, и у женщины может быть борода, нет — значит ее длина ноль; и у мужчин есть и талия и грудь. Я бы не стал из-за ЭТИХ свойств делать разводку на два подкласса, НО. Я ведь не знаю предысторию этого разделения. Может как раз и подразумевалось переопределение методов в дальнейшем, чтобы мальчики и девочки делали одно и то же по-разному.
__________________
Reality.getBounds(this);