国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

Google Guava 類庫簡介

2019-11-08 18:51:32
字體:
來源:轉載
供稿:網(wǎng)友

Guava 是一個 Google 的基于java1.6的類庫集合的擴展項目,包括 collections, caching, PRimitives support, concurrency libraries, common annotations, string processing, I/O, 等等. 這些高質量的 API 可以使你的JAVa代碼更加優(yōu)雅,更加簡潔,讓你工作更加輕松愉悅。下面我們就開啟優(yōu)雅Java編程學習之旅!

  項目相關信息:

  官方首頁:http://code.google.com/p/guava-libraries  官方下載:http://code.google.com/p/guava-libraries/downloads/list  官方文檔:http://docs.guava-libraries.googlecode.com/git/javadoc                    http://www.ostools.net/apidocs/apidoc?api=guava

  源碼包的簡單說明:   com.google.common.annotations:普通注解類型。   com.google.common.base:基本工具類庫和接口。   com.google.common.cache:緩存工具包,非常簡單易用且功能強大的JVM內(nèi)緩存。   com.google.common.collect:帶泛型的集合接口擴展和實現(xiàn),以及工具類,這里你會發(fā)現(xiàn)很多好玩的集合。   com.google.common.eventbus:發(fā)布訂閱風格的事件總線。   com.google.common.hash: 哈希工具包。   com.google.common.io:I/O工具包。   com.google.common.math:原始算術類型和超大數(shù)的運算工具包。   com.google.common.net:網(wǎng)絡工具包。   com.google.common.primitives:八種原始類型和無符號類型的靜態(tài)工具包。   com.google.common.reflect:反射工具包。   com.google.common.util.concurrent:多線程工具包。

  類庫使用手冊:

  一.  基本工具類:讓使用Java語言更令人愉悅。

  1. 使用和避免 null:null 有語言歧義, 會產(chǎn)生令人費解的錯誤, 反正他總是讓人不爽。很多 Guava 的工具類在遇到 null 時會直接拒絕或出錯,而不是默默地接受他們。  2. 前提條件:更容易的對你的方法進行前提條件的測試。  3. 常見的對象方法: 簡化了Object常用方法的實現(xiàn), 如 hashCode() 和 toString()。  4. 排序: Guava 強大的 "fluent Comparator"比較器, 提供多關鍵字排序。  5. Throwable類: 簡化了異常檢查和錯誤傳播。

  二.  集合類:集合類庫是 Guava 對 JDK 集合類的擴展, 這是 Guava 項目最完善和為人所知的部分。

  1. Immutable collections(不變的集合): 防御性編程, 不可修改的集合,并且提高了效率。  2. New collection types(新集合類型):JDK collections 沒有的一些集合類型,主要有:multisets,multimaps,tables, bidirectional maps等等  3. Powerful collection utilities(強大的集合工具類): java.util.Collections 中未包含的常用操作工具類  4. Extension utilities(擴展工具類): 給 Collection 對象添加一個裝飾器? 實現(xiàn)迭代器? 我們可以更容易使用這些方法。

  三.  緩存: 本地緩存,可以很方便的操作緩存對象,并且支持各種緩存失效行為模式。

  四.  Functional idioms(函數(shù)式): 簡潔, Guava實現(xiàn)了Java的函數(shù)式編程,可以顯著簡化代碼。

  五. Concurrency(并發(fā)):強大,簡單的抽象,讓我們更容易實現(xiàn)簡單正確的并發(fā)性代碼。

  1. ListenableFuture(可監(jiān)聽的Future): Futures,用于異步完成的回調(diào)。  2. Service: 控制事件的啟動和關閉,為你管理復雜的狀態(tài)邏輯。

  六. Strings: 一個非常非常有用的字符串工具類: 提供 splitting,joining, padding 等操作。

  七. Primitives: 擴展 JDK 中未提供的對原生類型(如int、char等)的操作, 包括某些類型的無符號的變量。

  八. Ranges: Guava 一個強大的 API,提供 Comparable 類型的范圍處理, 包括連續(xù)和離散的情況。

  九. I/O: 簡化 I/O 操作, 特別是對 I/O 流和文件的操作, for Java 5 and 6.  十. Hashing: 提供比 Object.hashCode() 更復雜的 hash 方法, 提供 Bloom filters.  十一. EventBus: 基于發(fā)布-訂閱模式的組件通信,但是不需要明確地注冊在委托對象中。  十二. Math: 優(yōu)化的 math 工具類,經(jīng)過完整測試。  十三. Reflection: Guava 的 Java 反射機制工具類。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 隆安县| 南投县| 永顺县| 郓城县| 绥芬河市| 康乐县| 荃湾区| 基隆市| 永和县| 三明市| 五大连池市| 新闻| 白水县| 荔浦县| 襄垣县| 绥江县| 华安县| 湘潭市| 东辽县| 资中县| 城口县| 积石山| 金门县| 高安市| 广元市| 简阳市| 威信县| 德阳市| 彭山县| 东安县| 达孜县| 玉树县| 盐亭县| 乐安县| 霍林郭勒市| 怀仁县| 旅游| 肥西县| 庆城县| 衡东县| 永平县|