最最常用的 100 个 Java类分享

所属分类: 软件编程 / java 阅读数: 48
收藏 0 赞 0 分享

大部分的 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

更多精彩内容其他人还在看

利用MultipartFile实现文件上传功能

这篇文章主要为大家详细介绍了利用MultipartFile实现文件上传功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Java编程实现NBA赛事接口调用实例代码

这篇文章主要介绍了Java编程实现NBA赛事接口调用实例代码,具有一定参考价值,需要的朋友可以了解下。
收藏 0 赞 0 分享

Java编程之双重循环打印图形

这篇文章主要介绍了Java编程之双重循环打印图形,属于Java编程基础练习部分,具有一定参考价值,需要的朋友可以了解下。
收藏 0 赞 0 分享

java基础学习JVM中GC的算法

这篇文章主要介绍了java基础学习JVM中GC的算法,通过图文加深对GC算法思路的理解。
收藏 0 赞 0 分享

Java编程Post数据请求和接收代码详解

这篇文章主要介绍了Java编程Post数据请求和接收代码详解,涉及enctype的三种编码,post与get等相关内容,具有一定参考价值,需要的朋友可以了解下。
收藏 0 赞 0 分享

Retrofit+Rxjava实现文件上传和下载功能

这篇文章主要介绍了Retrofit+Rxjava实现文件上传和下载功能,文中提到了单文件上传和多文件上传及相关参数的请求,需要的朋友参考下吧
收藏 0 赞 0 分享

Retrofit+Rxjava下载文件进度的实现

这篇文章主要介绍了Retrofit+Rxjava下载文件进度的实现,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

java检查服务器的连通两种方法代码分享

这篇文章主要介绍了java检查服务器的连通两种方法代码分享,涉及ping的介绍以及检查服务器连通的两种方法代码示例,具有一定参考价值,需要的朋友可以了解下。
收藏 0 赞 0 分享

Java/Android 获取网络重定向文件的真实URL的示例代码

本篇文章主要介绍了Java/Android 获取网络重定向文件的真实URL的示例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

java并发编程之同步器代码示例

这篇文章主要介绍了java并发编程之同步器代码示例,分享了相关代码,具有一定参考价值,需要的朋友可以了解下。
收藏 0 赞 0 分享
查看更多