最最常用的 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 等类,所以没必要对它们进行排除。

时间: 2024-12-21 09:35:12

最最常用的 100 个 Java 类(转)的相关文章

最常用的 100 个 Java 类

大部分的 Java 软件开发都会使用到各种不同的库.近日我们从一万个开源的 Java 项目中进行分析,从中提取出最常用的 Java 类,这些类有来自于 Java 的标准库,也有第三方库.每个类在同一个项目中只计数一次,下面的列表中显示前 100 名的类. 以下列表中按使用最多的类进行排序,第三个数值表示 10000 个项目里使用到该类的项目数,而完整的列表请看 here. java.util.ArrayList(6958) java.io.IOException(6866) java.util.

最常用的1000个Java类 (附代码示例)

分析Github 3000个开源项目,粗略统计如下.括号内的数字是使用频率 0-3000. 下面的列表显示不全,完整的请看完整列表. 1. java.util.List    (2889) 2. java.util.ArrayList    (2831) 3. java.io.IOException    (2813) 4. java.util.Map    (2592) 5. java.util.HashMap    (2541) 6. java.io.File    (2195) 7. ja

java 常用的验证方法帮助类

import java.text.ParseException; import java.util.Collection; import java.util.Map; /** * 常用的验证方法帮助类,提供对字符串,集合,数组,数值的验证 * * */ public class ValidateHelper { /** * 判断一个字符串是否不是一个空字符串 * * @param s 要判断的字符串 * @return 如果不为空返回true,否则返回false */ public static

【转】Eclipse/MyEclipse 最最常用的快捷键

F 键类 F2 显示详细信息 F3 跳到声明或定义的地方 Ctrl + 键类 Ctrl+1 快速修复 ( 最经典的快捷键 , 就不用多说了 ) Ctrl+D 删除当前行 Ctrl+E 快速显示当前 Editer 的下拉列表 ( 如果当前页面没有显示的用黑体表示 ) Ctrl+T 快速显示当前类的继承结构 Ctrl+O 快速显示 OutLine Ctrl+         F 查找 / 替换 Ctrl+ / 在代码窗口中是这种注释(推荐使用 Ctrl +Shift + C 注释) Ctrl+Q 定

Eclipse/MyEclipse 最最常用的快捷键

F 键类 F2 显示详细信息 F3 跳到声明或定义的地方 Ctrl + 键类 Ctrl+1 快速修复 ( 最经典的快捷键 , 就不用多说了 ) Ctrl+D 删除当前行 Ctrl+E 快速显示当前 Editer 的下拉列表 ( 如果当前页面没有显示的用黑体表示 ) Ctrl+T 快速显示当前类的继承结构 Ctrl+O 快速显示 OutLine Ctrl+         F 查找 / 替换 Ctrl+ / 在代码窗口中是这种注释(推荐使用 Ctrl +Shift + C 注释) Ctrl+Q 定

Java类的生命周期详解

引言 最近有位细心的朋友在阅读笔者的文章时,对java类的生命周期问题有一些疑惑,笔者打开百度搜了一下相关的问题,看到网上的资料很少有把这个问题讲明白的,主要是因为目前国内java方面的教材大多只是告诉你“怎样做”,但至于“为什么这样做”却不多说,所以造成大家在基础和原理方面的知识比较匮乏,所以笔者今天就斗胆来讲一下这个问题,权当抛砖引玉,希望对在这个问题上有疑惑的朋友有所帮助,文中有说的不对的地方,也希望各路高手前来指正. 首先来了解一下jvm(java虚拟机)中的几个比较重要的内存区域,这几

【转载】详解java类的生命周期

原文地址:http://blog.csdn.net/zhengzhb/article/details/7517213 引言 最近有位细心的朋友在阅读笔者的文章时,对java类的生命周期问题有一些疑惑,笔者打开百度搜了一下相关的问题,看到网上的资料很少有把这个问题讲明白的,主要是因为目前国内java方面的教材大多只是告诉你“怎样做”,但至于“为什么这样做”却不多说,所以造成大家在基础和原理方面的知识比较匮乏,所以笔者今天就斗胆来讲一下这个问题,权当抛砖引玉,希望对在这个问题上有疑惑的朋友有所帮助,

java类生命周期详细解析

(一)详解java类的生命周期 引言 最近有位细心的朋友在阅读笔者的文章时,对java类的生命周期问题有一些疑惑,笔者打开百度搜了一下相关的问题,看到网上的资料很少有把这个问题讲明白的,主要是因为目前国内java方面的教材大多只是告诉你“怎样做”,但至于“为什么这样做”却不多说,所以造成大家在基础和原理方面的知识比较匮乏,所以笔者今天就斗胆来讲一下这个问题,权当抛砖引玉,希望对在这个问题上有疑惑的朋友有所帮助,文中有说的不对的地方,也希望各路高手前来指正. 首先来了解一下jvm(java虚拟机)

Java类WebServer及中间件拿webshell方法总结

0.序 原文名称:Tomcat.Weblogic.JBoss.GlassFish.Resin.Websphere弱口令及拿webshell方法总结 原文from:http://www.hack80.com/thread-22662-1-1.html 1.java应用服务器 Java应用服务器主要为应用程序提供运行环境,为组件提供服务.Java 的应用服务器很多,从功能上分为两类:JSP 服务器和 Java EE 服务器. 1.1 常见Java服务器 常见的Java服务器:Tomcat.Weblo