它的原理就是配置一些常用代碼字母縮寫,再輸入簡寫時可以出現(xiàn)你預(yù)定義的固定模式代碼,使得開發(fā)效率大大提高同時也可以增加個性化,最簡單的例子就是java中輸入sout,會出現(xiàn)Sy...
CGLib動態(tài)代理和JDK動態(tài)代理總結(jié) 動態(tài)代理與靜態(tài)代理相比較,最大的好處是接口中聲明的所有方法都被轉(zhuǎn)移到調(diào)用處理器一個集中的方法中處理,解耦和易維護(hù) 兩種動態(tài)代理的區(qū)別:...
什么是動態(tài)代理 在程序運(yùn)行時,運(yùn)用反射機(jī)制動態(tài)創(chuàng)建而成,無需手動編寫代碼CgLib動態(tài)代理的原理是對指定的業(yè)務(wù)類生成一個子類,并覆蓋其中的業(yè)務(wù)方法來實(shí)現(xiàn)代理 1.創(chuàng)建支付(父...
1.HashSet 基本用法 HashSet 基本操作方法有:add(添加)、remove(刪除)、contains(判斷某個元素是否存在)和 size(集合數(shù)量)。這些方法...
JDK 8 之后的開發(fā)環(huán)境,推薦使用 Stream 的遍歷方式,因為它足夠簡潔;而如果在遍歷的過程中需要動態(tài)的刪除元素,那么推薦使用迭代器的遍歷方式;如果在遍歷的時候,...
1、main方法:psvm 或者 main (模板自己可以設(shè)置) 2、輸入語句:sout 3、復(fù)制一行:ctrl + d 4、刪除一行:ctrl + y 5、代碼向上/下移動...
什么是動態(tài)代理 在程序運(yùn)行時,運(yùn)用反射機(jī)制動態(tài)創(chuàng)建而成,無需手動編寫代碼JDK動態(tài)代理與靜態(tài)代理一樣,目標(biāo)類需要實(shí)現(xiàn)一個代理接口,再通過代理對象調(diào)用目標(biāo)方法 1.創(chuàng)建支付(父...
什么是靜態(tài)代理 由程序創(chuàng)建或特定工具自動生成源代碼,在程序運(yùn)行前,代理類的.class文件就已經(jīng)存在 通過將目標(biāo)類與代理類實(shí)現(xiàn)同一個接口,讓代理類持有真實(shí)類對象,然后在代理類...
SpringBoot2.X啟動方式講解和部署 簡介:講解SpringBoot2.X啟動方式 IDEA開發(fā)中啟動 本地開發(fā)中常用 外置Tomcat中啟動 接近淘汰 tomc...
實(shí)現(xiàn)多線程的時候: * 1:需要繼承Thread類 * 2:必須要重新run方法,指的是核心執(zhí)行的邏輯 * 3:線程啟動的時候不要直接調(diào)用run()方法,是要通過start(...
Writer: 最保險的方式,在輸出流關(guān)閉之前每次都flush一下,然后在關(guān)閉 字符流可以直接讀取中文漢字,字節(jié)流在處理的時候會出現(xiàn)中文亂碼 什么時候需要加flu...
1.set 中存放的是無序,唯一的數(shù)據(jù)2.set不可以通過下標(biāo)獲取對應(yīng)位置的元素的值,因為無序的特點(diǎn)3.使用treeset底層實(shí)現(xiàn)是treemap,利用紅黑數(shù)實(shí)現(xiàn)4.設(shè)置元素...
1.Vector也是List接口的一個子類實(shí)現(xiàn)2.Vector跟ArryList一樣,底層都是使用數(shù)組進(jìn)行實(shí)現(xiàn)3.面試經(jīng)常問區(qū)別: (1)ArryList是線程不安全的...
java集合框架: Collection:存放的是單一值 特點(diǎn): 1、可以存放不同類型的數(shù)據(jù),而數(shù)組只能存放固定類型的數(shù)據(jù) ...