La plupart des développements de logiciels Java utilisent diverses bibliothèques. Récemment, nous avons analysé 10 000 projets Java open source et extrait les classes Java les plus couramment utilisées. Ces classes proviennent de la bibliothèque standard Java et de bibliothèques tierces. Chaque classe n'est comptée qu'une seule fois dans le même projet et les 100 meilleures classes sont affichées dans la liste ci-dessous.
La liste suivante est triée par classes les plus couramment utilisées. La troisième valeur représente le nombre de projets utilisant cette classe parmi 10 000 projets. Pour la liste complète, veuillez voir ici.
- java.util.ArrayList (6958)
- java.io.IOException (6866)
- java.util .Liste (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.Serializing (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)
Dans le tableau ci-dessus, il n'est pas du tout surprenant que 85 d'entre elles soient la bibliothèque standard de Java, car elle fait partie du langage lui-même, impliquant les packages util, lang et io.
La figure suivante est le diagramme de distribution de l'utilisation du package :
L'enquête consiste à analyser les instructions d'importation dans le fichier de code source, vous n'avez donc pas trouvez un grand nombre de classes Strings, Math, StringBuilder et autres, il n'est donc pas nécessaire de les exclure.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!
Déclaration:Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn