Size: a a a

2020 April 05

JC

Julian =) Coffee in archlinux_ru
Julian =) Coffee
@rikhus
тут конечно куча пропущеных запятых и синтаксических ошибок, но вот суть в том, что в Formatter у нас есть функция print, которая принимает любой Showable

а классы A и B наследуют Showable, поэтому у нас полиморфная функция print может с ними обоими работать
И короче полиморфизм не в абстрактных классах и чем-то таком, а то что функция Formatter.print может принимать туеву кучу разных классов, пока они имплементят toString
источник

CA

Cyber Arigato in archlinux_ru
Julian =) Coffee
@rikhus
тут конечно куча пропущеных запятых и синтаксических ошибок, но вот суть в том, что в Formatter у нас есть функция print, которая принимает любой Showable

а классы A и B наследуют Showable, поэтому у нас полиморфная функция print может с ними обоими работать
так, т.е разная реализация, результат один и тот же, т.е выполняется та же задача?
источник

CA

Cyber Arigato in archlinux_ru
напримет toString
источник

CA

Cyber Arigato in archlinux_ru
разная реализация для разных типов
источник

JC

Julian =) Coffee in archlinux_ru
там самое главное в Formatter
источник

CA

Cyber Arigato in archlinux_ru
но при этом она должна переводить в строку
источник

JC

Julian =) Coffee in archlinux_ru
ты не туда смотришь
источник

CA

Cyber Arigato in archlinux_ru
ага, т.е и a и b showable, поэтому Formatter может их вывести
источник

JC

Julian =) Coffee in archlinux_ru
да
источник

JC

Julian =) Coffee in archlinux_ru
Вот в этом полиморфизм
источник

CA

Cyber Arigato in archlinux_ru
я походу +- понял
источник

JC

Julian =) Coffee in archlinux_ru
Формы разные, но форматеру безразлично
источник

CA

Cyber Arigato in archlinux_ru
блин, спасибо
источник

JC

Julian =) Coffee in archlinux_ru
Главное чтоб tostring был и выдавал строку
источник

JC

Julian =) Coffee in archlinux_ru
А почему в ООП неправильный полиморфизм, потому что их на самом деле туева куча
источник

CA

Cyber Arigato in archlinux_ru
Julian =) Coffee
Главное чтоб tostring был и выдавал строку
хм, а я правильно понимаю, сам класс Showable юзать нельзя, так как он лишь абстрактный?
источник

CA

Cyber Arigato in archlinux_ru
ну тип передавать форматтеру
источник

CA

Cyber Arigato in archlinux_ru
обьект
источник

CA

Cyber Arigato in archlinux_ru
я где-то такое читал
источник

JC

Julian =) Coffee in archlinux_ru
Cyber Arigato
хм, а я правильно понимаю, сам класс Showable юзать нельзя, так как он лишь абстрактный?
ну...... да
но это просто пример
источник