最最常用的 100 个 Java 类
大部分的 Java 软件开发都会使用到各种不同的库。近日我们从一万个开源的 Java 项目中进行分析,从中提取出最常用的 Java 类,这些类有来自于 Java 的标准库,也有第三方库。每个类在同一个项目中只计数一次,下面的列表中显示前 100 名的类。
以下列表中按使用最多的类进行排序,第三个数值表示 10000 个项目里使用到该类的项目数,而完整的列表请看 here.
java.util.ArrayList (6958) java.io.IOException (6866) java.util.List (6784) java.util.HashMap (5590) java.util.Map (5413) java.io.File (5097) java.io.InputStream (4234) java.util.Set (3915) java.util.Arrays (3884) java.util.Iterator (3856) java.util.Collections (3643) java.util.Date (3461) java.util.HashSet (3278) java.io.BufferedReader (3257) java.util.Collection (3192) java.net.URL (3168) java.io.FileInputStream (3044) java.io.InputStreamReader (3023) org.junit.Test (3008) java.io.FileOutputStream (2843) java.io.FileNotFoundException (2669) java.io.OutputStream (2563) java.util.regex.Pattern (2469) java.io.Serializable (2437) java.util.LinkedList (2372) java.text.SimpleDateFormat (2245) java.util.Properties (2190) java.util.Random (2171) java.lang.reflect.Method (2141) java.io.ByteArrayOutputStream (2112) java.util.regex.Matcher (2012) android.os.Bundle (2007) java.util.logging.Logger (1999) java.io.UnsupportedEncodingException (1968) org.junit.Before (1920) java.util.Comparator (1896) java.io.ByteArrayInputStream (1868) java.io.PrintWriter (1862) java.util.Calendar (1854) android.app.Activity (1843) java.net.MalformedURLException (1828) android.content.Context (1780) android.view.View (1731) java.util.Locale (1719) java.util.Enumeration (1709) java.util.Map.Entry (1705) java.io.FileWriter (1677) java.io.FileReader (1651) android.util.Log (1614) android.content.Intent (1601) java.lang.reflect.InvocationTargetException (1594) java.util.logging.Level (1557) java.lang.reflect.Field (1499) java.io.StringWriter (1499) android.widget.TextView (1442) java.util.LinkedHashMap (1409) java.io.Reader (1390) java.net.URI (1377) java.io.Writer (1339) java.text.ParseException (1318) junit.framework.TestCase (1318) java.io.OutputStreamWriter (1295) java.io.StringReader (1279) java.io.BufferedWriter (1265) java.util.Vector (1254) java.util.StringTokenizer (1251) java.text.DateFormat (1246) java.util.concurrent.TimeUnit (1237) java.io.BufferedInputStream (1235) java.util.TreeMap (1227) org.xml.sax.SAXException (1218) javax.servlet.http.HttpServletRequest (1175) java.io.PrintStream (1168) java.util.TreeSet (1160) android.widget.Toast (1157) java.util.Hashtable (1154) java.lang.reflect.Constructor (1139) java.net.URLEncoder (1134) java.security.NoSuchAlgorithmException (1134) org.w3c.dom.Document (1130) android.widget.Button (1129) org.junit.After (1128) javax.servlet.http.HttpServletResponse (1109) java.awt.Color (1099) java.net.URISyntaxException (1085) javax.servlet.ServletException (1081) javax.xml.parsers.DocumentBuilderFactory (1076) java.lang.annotation.Retention (1075) java.security.MessageDigest (1072) java.util.concurrent.Executors (1062) java.net.UnknownHostException (1057) org.slf4j.Logger (1054) java.sql.SQLException (1043) org.slf4j.LoggerFactory (1042) java.util.UUID (1040) java.net.InetAddress (1026) junit.framework.Assert (1011) android.view.ViewGroup (1005) java.util.concurrent.ConcurrentHashMap (1001) java.awt.event.ActionEvent (995)
上表中,一点也不奇怪,有 85 个是 Java 的标准库,因为这是语言本身的一部分,涉及 util、lang 和 io 包。
下图是包使用的分布图:
https://yqfile.alicdn.com/19194a4c354178b42f32c600db2a0da904d66bf7.png" >
该调查是分析源码文件中的 import 语句,因此你并没有发现大量的 String, Math, StringBuilder 等类,所以没必要对它们进行排除。
文章转载自 开源中国社区 [http://www.oschina.net]

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
传谷歌收紧 Android 厂商控制:力推自家应用
随着谷歌试图进一步加强对Android系统的控制,并大力推广自主的服务及应用,Android系统的“开放性”正越来越弱。而The Information网站报道的一些机密Android合同展示了其中的具体细节。 很明显,谷歌正在加强自主应用,例如Gmail、Drive存储服务和Chrome浏览器。谷歌要求这些应用必须被预装在Android手机中。此外,这些应用必须被放在主页屏幕的醒目位置,而谷歌搜索的桌面小工具也需要同步显示。 长期以来,Android一直被认为是一个更“开放”的系统,第三方硬件厂商可以对该系统进行自主订制。然而对谷歌来说,这种模式并未取得良好的效果,因为谷歌无法通过Android手机的销售获得收入。谷歌的收入主要来自用户对谷歌搜索引擎的使用,以及与广告相关的其他产品。目前,谷歌希望解决Android系统的界面碎片化、第三方应用与自主应用竞争,以及用户体验碎片化的问题。 谷歌正推动手机厂商在Android手机中重点突出该公司的应用。例如报道称,谷歌Play商店和包含谷歌核心应用在内的文件夹必须出现在手机的主页屏幕上。而从Home按钮开始的滑动手势必须触发谷歌搜索,就像所...
- 下一篇
形势大好的 Android 面临哪些难题?
Android诞生之初,或许少有人预测到它会像现在这样迅猛发展。2008年,由于金融危机,Google的日子并不好过,首部Android手机HTC Dream(G1)受到不少赞誉,但被认为并不能与iPhone匹敌。另外,Chrome浏览器的状况也并不理想,花了四个月才占领了1%的份额。Google的股价也直到2009年初才再一次出现增长。 而六年后,从IDC的数据来看,截止到今年二季度Android已经占据了84.7%的智能手机市场,Chrome的占有率上升到了45%。但尽管Google盛况空前,Android的未来并不明朗。 Android还有多少利润? 在Android阵营中,获利最多的OEM厂商应该是三星,但近期的数据显示,三星的统治地位不保。今年第二季度三星利润为60亿美元,其中多数来自智能手机,但这一数字比去年同期下降了30%,移动设备业务利润的下降幅度加快。 在Android早期发展中曾红极一时的HTC,其状况也并不理想。全新的HTC One系列让该公司扭亏为盈,今年第二季度盈利7500万美元,但销量仍在下降。 同样来自韩国的OEM厂商LG的情况要好些,其二季度的利润为83...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- Mario游戏-低调大师作品