引用:
作者booger
我一直很好奇...為什麼Java不支援Operator Overloading ?
|
讓我引用王建興先生的一篇文章:
程式庫標準化與豐富度的重要性
裡頭提到另一位技術作者孟岩,他認為程式語言在設計的風格上分為兩種,"魔幻語言"與"簡約語言",C++就是魔幻語言,同一件事可以用很多方式達成,而Java就是一種簡約語言.
例如,你要不要幫你自己設計的類別MyInteger做++的運算子覆載,或是直接以myInt.increase()達成,看個人的風格.但Java就沒有,你只能用myInt.increase()達成.
魔幻語言自由度高,但門檻也高;簡約語言限制多,但程式碼不太容易出現像火星文那樣的東西.