lambda ?
? ?匿名函數 ? 為了簡化java中的匿名內部類
? ?
? ?
? ?事件監聽 寫一個類 ?實現 ActionListener 接口 (外部類)
? ?
? ? |
?? ?|
?? ?內部類 ?類在其他地方用不到, 索性就把這個類定義在類的內部使用
?? ? ? ? ? ?好處: 1.內部可以使用外部類的成員
?? ??? ??? ? ? ? ?2.其他地方發現不了
?? ??? ??? ??? ? ?
? ? |
?? ?|
?? ?往往內部類只用一次, 還需要創建一個內部類, 挺麻煩的
?? ?java就為了簡化語法, new 接口/抽象類 ?創建了一個匿名的類的對象
? ?
? ?
? ? java8之前,函數/方法是不能當做參數傳遞的,必須將函數包裝在對象中.
?? ?但是核心就是函數完成某個功能而已,還需要創建一個對象.
?? ?
?? ?java8開始 對這一語法進一步進行簡化 , 匿名內部類都不需要創建了
?? ?直接將函數作為參數傳遞
?? ?
?? ?lambda 是匿名函數 , 把函數當做參數一樣傳遞.
?? ? ? ? ? ?底層編譯器將語法轉換為常規代碼
?? ?
?? ?lambda是一個"語法糖",就是一個名詞, 某種語法可以簡化開發稱為語法糖
?? ? ? 裝箱 ?拆箱
?? ? ? 自動類型轉換
?? ? ? 泛型
?? ?
?? ? ??
?? ?使用lambda接口中必須只能有一個抽象方法, 只能靠推斷. ?
IO流
? 輸入輸出文件內容
??
java8Stream
? 處理數據集合(數組,集合類)
? 對數組,集合類 ?進行各種操作(過濾,排序....)
??
? stream處理數據大體過程
? ? 數組/集合類 --> 流 --各種操作(排序,過濾)--> 結果(數組/集合類)
?? ?
?? ?數組合集合類更偏向于存儲數據(各種結構)
?? ?
?? ?Stram更偏向于數據操作(處理數據)
?? ?
?? ?流操作:
?? ? ? 中間操作,返回的還是流對象
?? ? ? 終端操作,返回的是我們需要的結果(數組/集合/單值)?
Maven
? maven是apache軟件基金會的一個開源項目,
? maven是一個項目構建(項目管理)工具.
? 具體表現: 管理項目中依賴的jar文件,以及jar文件之間的依賴關系(在A.jar文件中,用到了B.jar)
? ? ? ? ? ? 可以完成項目的測試,編譯(.java-->.class),打包(源代碼-->.jar文件)等工作. ? ? ?
??
? apache軟件基金會(國外的一個組織,專門維護開源項目)
??
??
? maven是如何管理項目中依賴的jar文件?
? ? ?
?? ? maven將常用的jar收集起來,在他的服務器上存儲.
?? ? 每個jar都有一個獨一無二的地址.
?? ??
?? ? 我們在開發期間,只需將jar包的地址配置在項目配置文件中即可.
?? ? 借助maven就可以自動去官方下載jar文件到本地.
?? ??
?? ??
?? ? maven管理的項目根目錄下,都有一個pom.xml文件
?? ? 在pom.xml文件中指示maven如何工作(配置項目版本,編譯選項,jar的坐標.....)
?? ??
?? ? 坐標:
?? ? ? jar包在maven倉庫中的唯一地址
?? ? ??
?? ? 中央倉庫(全球共享唯一的.)
?? ??
?? ? 中央倉庫鏡像(阿里云鏡像) 多個
? ? ?本地倉庫?? ?
? ? ? 在項目中使用jar的時候,首先會從本地倉庫查找,
? ? ? 如果本地倉庫沒有,就會去中央倉庫/中央倉庫鏡像中下載.?? ? ?
?? ? ??
Maven 開發環境搭建 ?
? ? 前提條件:
? ? ? ? 安裝jdk
? ? ? ? 網絡連接正常?? ? ?
?? ?安裝:
?? ? ?解壓安裝包到指定位置
?? ? ?將bin目錄的地址配置 到環境變量path中
?? ? ?在命令行測試 ? mvn -version
?? ? ?
?? ? ?測試如果有問題, 配置一個 JAVA_HOME
?? ? ?
?? ? ?
? ? 修改maven配置文件
? ? ?? ?settings.xml
?? ? ? ? 1.配置本地倉庫地址
?? ??? ? ? <localRepository>D:/localRepository</localRepository>
?? ??? ? 2.配置阿里云倉庫鏡像
?? ??? ? ? ?<mirror>
?? ??? ??? ??? ?<id>aliMaven </id>
?? ??? ??? ??? ?<name>aliyun Maven </name>
?? ??? ??? ??? ?<url>http://Maven.aliyun.com/nexus/content/groups/public/</url>
?? ??? ??? ??? ?<mirrorOf>central</mirrorOf>
?? ??? ??? ?</mirror>
?? ??? ? ?
?? ? ?
?? ? 在idea中配置集成maven ?