metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2006-08-03 10:01 pm

Java

Это что, получается, в Java нет денежного типа с математическими операторами, и перегрузки операторов тоже нет?
Они там в Sun норкоманы что ле все?

[identity profile] yakov-sirotkin.livejournal.com 2006-08-03 07:07 pm (UTC)(link)
Денежный тип очень сложным может быть: разные валюты, округление и всё такое...

Перегрузки, конечно, нет.

[identity profile] volodymir-k.livejournal.com 2006-08-03 11:23 pm (UTC)(link)
> язык без простого денежного типа - это какое-то безумие

Есть такое понятие, как "виртуальная машина". В виртуальной машине только базовые понятия. Даже String это просто крутой объект.

Вы можете смеяться, но валюта -- это наворот и нужна далёким от бухгалтерии людям довольно редко. Люди пользуют или double, или long (при отображении делят на 100). Я в курсе о межгалактической проблеме округления копейки, но вообще-то западные люди жизнь тратят не на подобные долбоебизмы. В банках м.б. и тратят, но остальные нет.

Насчёт перегрузки операторов -- есть компилятор от Роджера Бэкона из ИБМ, там от много ништяков пореализовал. Закомпиляй в .class и тащись. Вообще Java не оптимальный уровень решения бухгалтерских задач, есть куча поверх него интерпретаторов с перегрузкой чего хошь. Перегрузку они принципиально отказываются делать, опыт C++ показал злоупотреблятство и чреватость.