[英]Why Java has so many parse methods?
例如,Math.max(.. ..)方法被重載以支持不同類型的Number 。 所有這些的一個名稱,因為沒有其他類型的數字 ,它做同樣的事情。
為每個擴展Number的類定義的解析NumberType方法也是如此。
為什么會這樣? 如果參數化的解析方法在Number(和Number of course,參數化)中定義,那就不會更好了: public abstract T parse( String s );
(並在之后的所有子類中實現)
Math.max
的各種版本都有原始參數,而不是Numbers(對象)。 你建議的是每次調用方法時都需要裝箱/拆箱操作,這不會像當前設計那樣有效。
自JDK 1.0以來存在Number
,Generics僅在Java 1.5中引入。 因此,這種通用的解析方法是不可能的。
關於Math.max
,它只接受基本類型,它們彼此之間沒有任何形式的關系,並且每個基本類型需要單獨聲明才能被支持。
解析實例方法毫無意義。 您必須在解析之前構造不可變值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.