最最常用的 100 个 Java类分享

 更新时间:2015年04月25日 20:37:14   投稿:mdxy-dxy  
这篇文章主要介绍了最最常用的 100 个 Java类分享,需要的朋友可以参考下

大部分的 Java 软件开发都会使用到各种不同的库。近日我们从一万个开源的 Java 项目中进行分析,从中提取出最常用的 Java 类,这些类有来自于 Java 的标准库,也有第三方库。每个类在同一个项目中只计数一次,下面的列表中显示前 100 名的类。

以下列表中按使用最多的类进行排序,第三个数值表示 10000 个项目里使用到该类的项目数,而完整的列表请看 here.

  1. java.util.ArrayList (6958)

  2. java.io.IOException (6866)

  3. java.util.List (6784)

  4. java.util.HashMap (5590)

  5. java.util.Map (5413)

  6. java.io.File (5097)

  7. java.io.InputStream (4234)

  8. java.util.Set (3915)

  9. java.util.Arrays (3884)

  10. java.util.Iterator (3856)

  11. java.util.Collections (3643)

  12. java.util.Date (3461)

  13. java.util.HashSet (3278)

  14. java.io.BufferedReader (3257)

  15. java.util.Collection (3192)

  16. java.net.URL (3168)

  17. java.io.FileInputStream (3044)

  18. java.io.InputStreamReader (3023)

  19. org.junit.Test (3008)

  20. java.io.FileOutputStream (2843)

  21. java.io.FileNotFoundException (2669)

  22. java.io.OutputStream (2563)

  23. java.util.regex.Pattern (2469)

  24. java.io.Serializable (2437)

  25. java.util.LinkedList (2372)

  26. java.text.SimpleDateFormat (2245)

  27. java.util.Properties (2190)

  28. java.util.Random (2171)

  29. java.lang.reflect.Method (2141)

  30. java.io.ByteArrayOutputStream (2112)

  31. java.util.regex.Matcher (2012)

  32. android.os.Bundle (2007)

  33. java.util.logging.Logger (1999)

  34. java.io.UnsupportedEncodingException (1968)

  35. org.junit.Before (1920)

  36. java.util.Comparator (1896)

  37. java.io.ByteArrayInputStream (1868)

  38. java.io.PrintWriter (1862)

  39. java.util.Calendar (1854)

  40. android.app.Activity (1843)

  41. java.net.MalformedURLException (1828)

  42. android.content.Context (1780)

  43. android.view.View (1731)

  44. java.util.Locale (1719)

  45. java.util.Enumeration (1709)

  46. java.util.Map.Entry (1705)

  47. java.io.FileWriter (1677)

  48. java.io.FileReader (1651)

  49. android.util.Log (1614)

  50. android.content.Intent (1601)

  51. java.lang.reflect.InvocationTargetException (1594)

  52. java.util.logging.Level (1557)

  53. java.lang.reflect.Field (1499)

  54. java.io.StringWriter (1499)

  55. android.widget.TextView (1442)

  56. java.util.LinkedHashMap (1409)

  57. java.io.Reader (1390)

  58. java.net.URI (1377)

  59. java.io.Writer (1339)

  60. java.text.ParseException (1318)

  61. junit.framework.TestCase (1318)

  62. java.io.OutputStreamWriter (1295)

  63. java.io.StringReader (1279)

  64. java.io.BufferedWriter (1265)

  65. java.util.Vector (1254)

  66. java.util.StringTokenizer (1251)

  67. java.text.DateFormat (1246)

  68. java.util.concurrent.TimeUnit (1237)

  69. java.io.BufferedInputStream (1235)

  70. java.util.TreeMap (1227)

  71. org.xml.sax.SAXException (1218)

  72. javax.servlet.http.HttpServletRequest (1175)

  73. java.io.PrintStream (1168)

  74. java.util.TreeSet (1160)

  75. android.widget.Toast (1157)

  76. java.util.Hashtable (1154)

  77. java.lang.reflect.Constructor (1139)

  78. java.net.URLEncoder (1134)

  79. java.security.NoSuchAlgorithmException (1134)

  80. org.w3c.dom.Document (1130)

  81. android.widget.Button (1129)

  82. org.junit.After (1128)

  83. javax.servlet.http.HttpServletResponse (1109)

  84. java.awt.Color (1099)

  85. java.net.URISyntaxException (1085)

  86. javax.servlet.ServletException (1081)

  87. javax.xml.parsers.DocumentBuilderFactory (1076)

  88. java.lang.annotation.Retention (1075)

  89. java.security.MessageDigest (1072)

  90. java.util.concurrent.Executors (1062)

  91. java.net.UnknownHostException (1057)

  92. org.slf4j.Logger (1054)

  93. java.sql.SQLException (1043)

  94. org.slf4j.LoggerFactory (1042)

  95. java.util.UUID (1040)

  96. java.net.InetAddress (1026)

  97. junit.framework.Assert (1011)

  98. android.view.ViewGroup (1005)

  99. java.util.concurrent.ConcurrentHashMap (1001)

  100. java.awt.event.ActionEvent (995)

上表中,一点也不奇怪,有 85 个是 Java 的标准库,因为这是语言本身的一部分,涉及 util、lang 和 io 包。

下图是包使用的分布图:

该调查是分析源码文件中的 import 语句,因此你并没有发现大量的 String, Math, StringBuilder 等类,所以没必要对它们进行排除。

via programcreek

相关文章

  • 关于SpringBoot的@ConfigurationProperties注解和松散绑定、数据校验

    关于SpringBoot的@ConfigurationProperties注解和松散绑定、数据校验

    这篇文章主要介绍了关于SpringBoot的@ConfigurationProperties注解和松散绑定、数据校验,@ConfigurationProperties主要作用就是将prefix属性指定的前缀配置项的值绑定到这个JavaBean上 ,通过指定的前缀,来绑定配置文件中的配置,需要的朋友可以参考下
    2023-05-05
  • Java之线程编程的4种方法实现案例讲解

    Java之线程编程的4种方法实现案例讲解

    这篇文章主要介绍了Java之线程编程的4种方法实现案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • java四种引用及在LeakCanery中应用详解

    java四种引用及在LeakCanery中应用详解

    这篇文章主要介绍了java四种引用及在LeakCanery中应用,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • SpringBoot之HandlerInterceptor拦截器的使用详解

    SpringBoot之HandlerInterceptor拦截器的使用详解

    这篇文章主要介绍了SpringBoot之HandlerInterceptor拦截器的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • Mybatis动态SQL的实现示例

    Mybatis动态SQL的实现示例

    这篇文章主要介绍了Mybatis动态SQL的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • idea 使用Maven Helper idea的解决方法

    idea 使用Maven Helper idea的解决方法

    这篇文章主要介绍了idea 使用Maven Helper idea的解决方法,本文给大家介绍的非常详细对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • mall整合SpringTask实现定时任务的方法示例

    mall整合SpringTask实现定时任务的方法示例

    这篇文章主要介绍了mall整合SpringTask实现定时任务的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-06-06
  • Spring中配置和读取多个Properties文件的方式方法

    Spring中配置和读取多个Properties文件的方式方法

    本篇文章主要介绍了Spring中配置和读取多个Properties文件的方式方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-04-04
  • SpringBoot配置文件bootstrap和application区别及说明

    SpringBoot配置文件bootstrap和application区别及说明

    这篇文章主要介绍了SpringBoot配置文件bootstrap和application区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Springboot上传文件时提示405问题及排坑过程

    Springboot上传文件时提示405问题及排坑过程

    这篇文章主要介绍了Springboot上传文件时提示405问题及排坑过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07

最新评论