紧咬 9 行代码,索赔超 10 亿美元
ÔÎijö´¦£º ²®ÀÖÔÚÏß
±³¾°
¼×¹ÇÎĺ͹ȸèÖ®¼äµÄ Java °æȨËßËÏ°¸´Ó 2010 Äê 8 ÔÂÆð£¬ÒѾÓÐ 5 Äê¶àÁË¡£2015 Äê 6 Ô£¬ÃÀ¹ú¸ßµÈ·¨Ôº²µ»Ø¹È¸èµÄÉÏËߣ¬Î¬³ÖÔÅУ¨¼´£ºÅж¨ API ÊÜ°æȨ±£»¤£¬¹È¸èÇÖȨ£©¡£
2015 Äê 10 Ô°¸¼þÍË»ØÃÀ¹úµØÇø·¨Ôº£¬ÓÉ William Alsup ·¨¹ÙÔÙ´ÎÉóÀí¡£Õâλ·¨¹ÙÔøÔÚ 2012 ÄêÍÆ·ÁËÅãÉóÍÅÈÏΪ¹È¸èÇÖȨµÄÒâ¼û£¬³Æ API ²»Ó¦¸ÃÊÜ°æȨ±£»¤¡£
Õâ¸ö°¸×Ó×î½üÓÖÓÐнøÕ¹ÁË¡£William Alsup ·¨¹ÙÑûÇëÁËһλ¾¼Ãѧ½ÌÊÚÀ´ÆÀ¹À Android µÄ 9 ÐдúÂëÊÇ·ñÇÖȨ£¬Õâ³¹µ×µÄ¼¤ÅÁ˼׹ÇÎÄ¡£¼×¹ÇÎıíʾÕâλ½ÌÊÚ¸ù±¾Ã»ÓÐÄÜÁ¦ÆÀ¹À´úÂë¡£
±¸ÊÜÕùÒéµÄ 9 ÐдúÂ룬¿ÉÈëÑ¡×î¹óµÄ´úÂë¶Î
OpenJDK ÖеÄÄÇ 9 ÐдúÂ룺
private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) {
if (fromIndex > toIndex)
throw new IllegalArgumentException("fromIndex(" + fromIndex +
") > toIndex(" + toIndex+")");
if (fromIndex < 0)
throw new ArrayIndexOutOfBoundsException(fromIndex);
if (toIndex > arrayLen)
throw new ArrayIndexOutOfBoundsException(toIndex);
}
Google ÓÃÁ˵ÄÄÇ 9 ÐдúÂ룺
private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) {
if (fromIndex > toIndex)
throw new IllegalArgumentException("fromIndex(" + fromIndex +
") > toIndex(" + toIndex+")");
if (fromIndex < 0)
throw new ArrayIndexOutOfBoundsException(fromIndex);
if (toIndex > arrayLen)
throw new ArrayIndexOutOfBoundsException(toIndex);
}
ÕâÁ½¶Î´úÂ붼ÊÇ Joshua Bloch дµÄ¡£
Bloch Ôø¾ÔÚ Sun ¹«Ë¾Ð´ Java API¡£2004 ÄêËû¼ÓÈë¹È¸è£¬2008Äê¼ÓÈëAndroidÏîÄ¿¡£²»¹ý£¬Ôڹȸ蹤×÷ʱ£¬ËûÈÔÈ»ÔÚ¸øÓÉ Sun ¹«Ë¾¿ØÖÆµÄ OpenJDK ÏîÄ¿¹±Ï×´úÂë¡£
ËûµÄ¹±Ï×Ö®Ò»£¬»ùÓÚ TimSort Ëã·¨¸Ä½øÁËÊý×éÅÅÐòµÄʵÏÖ¡£¾ÉËã·¨ºÍÐÂËã·¨Öж¼ÓÐ rangeCheck ·½·¨£¬ËùÒÔËû´Ó¾ÉʵÏÖÖи´ÖÆÁË£¬×÷Ϊ¡°a temporary measure¡±¡£
Joshua Bloch ºÎÐíÈËÒ²£¿
Joshua Bloch£¬Java ´óÅ£¡£Java ³ÌÐòÔ±Ó¦¸Ã¶¼Ìý¹ý£¬¼´±ãÄãûÓÐÌý¹ýËûµÄÃû×Ö£¬ÄÇÒ²¿Ï¶¨Ìý¹ýËûµÄÕâ±¾Ê顶Effective Java¡·¡£
ÔçÔÚ1996Ä꣬ÊÊ·ê Java ¸Õ¸Õո¶ͷ½Ç¡£ÏÈÊÇ1Ô·ݷ¢²¼JDK1.0£¬È»ºóÊÇ5Ôµ×ÔھɽðɽÕÙ¿ªÊ×½ìJavaOne´ó»á£¬ÄêÄ©ÓÖÊÇJDK1.1½ô¸úÆäºó¡£ÕýÊÇÔÚJava¼¼ÊõÈç»ðÈçݱ¡¢´óչȽŵı³¾°Ö®Ï£¬JoshuaBlochÀ´µ½ÁËSun¡£2004 Äê7Ô³õ£¬¾ÍÔÚJ2SE5.0·¢²¼ÔÚ¼´£¬Jusha Bloch¸Õ¸ÕÈÙ»ñSun¡°½Ü³ö¹¤³Ìʦ£¨Distinguished Engineer£©¡±µÄ³ÆºÅ֮ʱ£¬ËûͻȻÀ뿪Sun¶øÈ¥ÁËÕýÖµ·¢Õ¹Ì¬ÊÆѸÃ͵ÄGoogle£¬³ÉΪÁËGoogleµÄJavaÊ×ϯ¼Ü¹¹Ê¦¡£
2012 Äê 8 Ô£¬Bloch À뿪ÁË Google¡£
¹ØÓÚË÷Åâ½ð¶î
-
Åí²©Éç 2015Äê11ÔÂ19ÈÕ±¨µÀ£º¡¶Oracle Says Judge¡¯s Expert Biased in $1 Billion Google-Java Case¡·
-
PC World 2011Äê1ÔÂ20ÈÕ±¨µÀ£º¡¶Google Disputes Possible $6 Billion Java Lawsuit Price-tag¡·
-
ZDnet 2011Äê1ÔÂ17ÈÕ±¨µÀ£º¡¶Oracle wants billions from Google over Android: And just might get it¡·
²Î¿¼
HN & Maja D¡¯Hondt & °Ù¿Æ