最常用的 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 包。

时间: 2024-10-29 10:46:09

最常用的 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

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

100+经典Java面试题及答案解析

面向对象编程(OOP) Java是一个支持并发.基于类和面向对象的计算机编程语言.下面列出了面向对象软件开发的优点: 代码开发模块化,更易维护和修改. 代码复用. 增强代码的可靠性和灵活性. 增加代码的可理解性. 面向对象编程有很多重要的特性,比如:封装,继承,多态和抽象.下面的章节我们会逐个分析这些特性. 封装 封装给对象提供了隐藏内部特性和行为的能力.对象提供一些能被其他对象访问的方法来改变它内部的数据.在Java当中,有3种修饰符:public,private和protected.每一种修

详解java类的生命周期

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