最最常用的 100 个 Java类分享

所属分类: 软件编程 / java 阅读数: 93
收藏 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

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

Java基于反射机制实现全部注解获取的方法示例

这篇文章主要介绍了Java基于反射机制实现全部注解获取的方法,结合实例形式分析了java反射机制获取注解的具体实现方法与操作注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

Java 信号量Semaphore的实现

这篇文章主要介绍了Java 信号量Semaphore的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

eclipse+maven+spring mvc项目基本搭建过程

这篇文章主要介绍了eclipse+maven+spring mvc项目基本搭建过程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Spring boot集成swagger2生成接口文档的全过程

这篇文章主要给大家介绍了关于Spring boot集成swagger2生成接口文档的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Spring boot具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

Java冒泡排序法和选择排序法的实现

这篇文章主要介绍了Java冒泡排序法和选择排序法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Spring Cloud Alibaba教程之Sentinel的使用

这篇文章主要介绍了Spring Cloud Alibaba教程之Sentinel的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Josephus环的四种解法(约瑟夫环)基于java详解

这篇文章主要介绍了Josephus环的四种解法(约瑟夫环)基于java详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Java继承Thread类创建线程类示例

这篇文章主要介绍了Java继承Thread类创建线程类,结合实例形式分析了java线程操作相关使用技巧与注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

Java使用Callable和Future创建线程操作示例

这篇文章主要介绍了Java使用Callable和Future创建线程操作,结合实例形式分析了java使用Callable接口和Future类创建线程的相关操作技巧与注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

springBoot使用JdbcTemplate代码实例

这篇文章主要介绍了springBoot使用JdbcTemplate代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多