Программа-словарь: новое слово добавляется через создание объекта (массив символов передаётся как аргумент).
В дальнейшем каждое слово должно уметь склоняться, типа "слово1.родПадЕдЧисл ()" – метод выдаёт слово в этом падеже.
Фишка в том, что суть разные типы склонения – и для каждого способ образования падежных форм свой.
Тип склонения определяет сам конструктор, анализируя полученную последовательность символов (можно задавать и явным параметром, но по умолчанию вводится только ряд символов - т. е. само слово - и тип склонения определяется автоматически).
Как лучше всего это реализовать?
Самое на поверхности – чтобы метод, выдающий некий падеж, выбирал вариант обработки основы внутри себя, тогда там будет switch(типСклонения).
Но можно сделать ряд классов-потомков от Существительное как "class СущСклНаА extends Существительное" итд – и тогда в каждом из них будет своя реализация абстрактнаго метода "родительный падеж" из абстрактнаго класса Существительное (или из интерфейса Имя, не суть).
По логике, можно, тогда чтобы при создании новаго существительнаго (абстрактный класс) в нём создавался экземпляр СуществительнагоНужнагоТипаСклонения (с реализованными методами) – либо вместо Существительнаго (или даже его родительскаго – Слова), либо этот объект стал бы полем (но тогда Существительное нельзя делать абстрактным).
Проблема в том, что когда создаётся слово, не известно, какого типа оно будет (это определится из анализа переданных аргументом символов), нельзя написать
"Слово слово1 = new Слово1Склонения (буквы []);"
Должен быть общий конструктор, но вести себя после создания классы должны сообразно своей разновидности, которая может определяться конструктором из аргумента.
Вероятно, существуют ещё какие-то способы решения, я только-только учусь программировать, возможно, что-то жёстко путаю или упускаю из виду, нет ли у кого идей, как это реализовать наиболее изящно?
Java
Можно ли реализовать полиморфизм (Java) с общим конструктором для разных дочерних классов?
Конструктор принадлежит конкретному классу. Ты не сможешь создать конструктором другой класс, нежели тот, которому он принадлежит.
Мне решение видится в инкапсуляции классом "слово" абстрактного класса "склонение". Конструктор "слова" будет определять, к какому склонению слово относится, и создавать инкапсулированный объект-наследник "склонения". Доступ к падежам инкапсулированного свойства можно сделать через свойства "слова" либо опубликовать само "склонение" - как тебе больше нравится.
Мне решение видится в инкапсуляции классом "слово" абстрактного класса "склонение". Конструктор "слова" будет определять, к какому склонению слово относится, и создавать инкапсулированный объект-наследник "склонения". Доступ к падежам инкапсулированного свойства можно сделать через свойства "слова" либо опубликовать само "склонение" - как тебе больше нравится.
Если сложность в том, что разные слова склоняются по разному и по самому слову нельзя определить тип склонения, то каждому слову нужно передать склонение как объект. То есть этот объект будет описывать, как склонять данное слово.
Daнчиk *****
при создании слова (в общем случае) можно определить тип склонения по последним буквам.
хотелось бы унифицировать что ли: создаётся объект как просто "слово" (из массива символов), но потом разныя слова ведут себя полиморфично в соответствии с типом склонения, который программа определяет (по умолчанию) сама
(мне сейчас видится "enum ТипыСклонения" для этого)
хотелось бы унифицировать что ли: создаётся объект как просто "слово" (из массива символов), но потом разныя слова ведут себя полиморфично в соответствии с типом склонения, который программа определяет (по умолчанию) сама
(мне сейчас видится "enum ТипыСклонения" для этого)
Sunatullo Buriev
Самое на поверхности – чтобы метод, выдающий некий падеж, выбирал вариант обработки основы внутри себя, тогда там будет switch(типСклонения).
владеть не означает верить (истина) а знать что нет уклонения от подчинения- любая дверь выхода за пределы ассоциации с признаком но слово не сущность а имеет помещение в... и постольку поскольку ему навязан класс как избыточное что должно уже быть осуществлено в малом цикле здесь по сути обрабатывается тема считать ли заголовки программой...
владеть не означает верить (истина) а знать что нет уклонения от подчинения- любая дверь выхода за пределы ассоциации с признаком но слово не сущность а имеет помещение в... и постольку поскольку ему навязан класс как избыточное что должно уже быть осуществлено в малом цикле здесь по сути обрабатывается тема считать ли заголовки программой...
находиться без места во времени значит обладать субъективностью. ЗНачит ли это чистую субъективность. Ответ да так как это значит неизбежность рождения тоесть номинальность явления при таковости виртуальной данности сущностью* уже представлено а не всеобщностью времени как мгновения без момента прихода к пониманию помощи уже якобы размышляя об этом мы не можем понять что то большее чем текучесть всего как неспособность сосредоточенности в дольнейших поисках как неспособности помочь другим не обладая своей точкой восстановления. (сплав по реке не иначе)
есть ли необходимость что то тансформировать когда нет иной причинно следственной связи как изложенной тобой самим но всегда лишь в вследствии объективной данности не как рост данных а как версткой тобою протоколу субъективной проявленной сущности единого сознающего самое себе Знания распознанного (кем то как инверсия*сущность устанавливается -проникновение есть раскрытие цветка например- в идеальном Виде сложности представления) частично в силу исходящей нетвердой основой потери количества производя постоянно спад и кое где перехватывая в сущности всегда не свой (род обращения аннигилируется так всегда есть подача как общая Всеохватывающая&все признаки Сферичность думания ощущений. Собственно Рукой подать) Результат сообщения иерархической объективно поданной в границах осознавания а не субъективно воспринимаемого роста колличественных данных что есть необходимое условие как заблуждение относительно самосущего единого времени как емкость логического представления -опосредованнй призмы термина в разных приближениях а фактически призмой функционирующая*разгерметизация (фона или реструктуризация плана.. или разрушения пола-не важно параллельность как ее кто понимает "в Себе") вне я построение из определения Сущности в мире приходящи раз не номинальны так как не абсолютны то их по определению множество как неопределенное лишь в моменте но не тождественность себе... Принятая сила омраченной кармы как неведения параметра * Условия воспринимают сознание-я когда сила следов достигает уровня N* так степень уже предрасположеность к удвоению, высокому-мир становится явное как бы в разрез уже сознанному разуму месту как исключение из Правил Якобы Времени якобы Сущности Якобы Места...
есть ли необходимость что то тансформировать когда нет иной причинно следственной связи как изложенной тобой самим но всегда лишь в вследствии объективной данности не как рост данных а как версткой тобою протоколу субъективной проявленной сущности единого сознающего самое себе Знания распознанного (кем то как инверсия*сущность устанавливается -проникновение есть раскрытие цветка например- в идеальном Виде сложности представления) частично в силу исходящей нетвердой основой потери количества производя постоянно спад и кое где перехватывая в сущности всегда не свой (род обращения аннигилируется так всегда есть подача как общая Всеохватывающая&все признаки Сферичность думания ощущений. Собственно Рукой подать) Результат сообщения иерархической объективно поданной в границах осознавания а не субъективно воспринимаемого роста колличественных данных что есть необходимое условие как заблуждение относительно самосущего единого времени как емкость логического представления -опосредованнй призмы термина в разных приближениях а фактически призмой функционирующая*разгерметизация (фона или реструктуризация плана.. или разрушения пола-не важно параллельность как ее кто понимает "в Себе") вне я построение из определения Сущности в мире приходящи раз не номинальны так как не абсолютны то их по определению множество как неопределенное лишь в моменте но не тождественность себе... Принятая сила омраченной кармы как неведения параметра * Условия воспринимают сознание-я когда сила следов достигает уровня N* так степень уже предрасположеность к удвоению, высокому-мир становится явное как бы в разрез уже сознанному разуму месту как исключение из Правил Якобы Времени якобы Сущности Якобы Места...
Daнчиk *****
вообще-то считается наоборот: субъективность = обусловленность пространством и временем) объективное сознание – это уже Бог :)
Похожие вопросы
- Что такое полиморфизм и для чего он нужен? Java
- Нужно ли хорошо знать математику Java программисту? На разных сайтах пишут по разному, одни пишут что матан только для..
- Всем привет. Помогите плз. Мне нужна помощь тех кто действительно хорошо знает Java т. к мне нужно выбрать один из курсов
- как правильней организовывать абстрактный класс JAVA
- Абстрактный класс или интерфейс (java)
- Помогите доделать код на java. В форму пользователь вводит символ, который нужно заменить на #.
- Как реализовать замену строки текстового файла по индексу в java
- Не выводит изображение в JAVA
- Java проблема с рефлексией.
- Java методы классы
тогда слово может выдавать универсальную функцию падажной формы, беря данные инкапсулиованнаго класса..
вопрос в том, что это будет за корневой класс "склонение"?
логичным может показаться наследовать существительноеСклонннияИкс от Существительнаго? ведь между ними мыслимо отношение "одно-является-частным-случаем-другого"