摘要:寫代碼時(shí),代碼的運(yùn)行中的控制狀態(tài)或業(yè)務(wù)狀態(tài)是會(huì)讓你的代碼流程變得混亂的一個(gè)重要原因,重構(gòu)箭頭型代碼的一個(gè)很重要的工作就是重新梳理和描述這些狀態(tài)的變遷關(guān)系。重構(gòu)箭頭型代碼其實(shí)是在幫你重新梳理所有的代碼和邏輯,這個(gè)過程非常值得為之付出。 ...
摘要:但大多數(shù)情況下應(yīng)該盡量利用一些機(jī)制將二元函數(shù)轉(zhuǎn)換成一元函數(shù)。應(yīng)該為起一個(gè)更能描述函數(shù)功能的函數(shù)名副作用在于對(duì)這個(gè)調(diào)用函數(shù),顧名思義,就是用來(lái)檢查密碼。注釋及其描述的代碼之間的聯(lián)系應(yīng)該顯而易見。受控異常的代價(jià)就是違反開放閉合原則。 大師...
摘要:參考創(chuàng)建所有運(yùn)行監(jiān)聽器并發(fā)布應(yīng)用啟動(dòng)事件來(lái)看下創(chuàng)建運(yùn)行監(jiān)聽器相關(guān)的源碼創(chuàng)建邏輯和之前實(shí)例化初始化器和監(jiān)聽器的一樣,一樣調(diào)用的是方法來(lái)獲取配置的監(jiān)聽器名稱并實(shí)例化所有的類。 上篇《Spring Boot 2.x 啟動(dòng)全過程源碼分析(一)入口類剖析》我們...
摘要:前言在從零開始實(shí)現(xiàn)一個(gè)簡(jiǎn)易的框架七實(shí)現(xiàn)中實(shí)現(xiàn)了框架的的功能,不過最后指出代碼的邏輯不是很好,在這一章節(jié)就將這一部分代碼進(jìn)行優(yōu)化。 前言 在從零開始實(shí)現(xiàn)一個(gè)簡(jiǎn)易的Java MVC框架(七)--實(shí)現(xiàn)MVC中實(shí)現(xiàn)了doodle框架的MVC的功能,不過最后指出代碼的...
摘要:前言面試,必然要被問內(nèi)存模型和并發(fā)開發(fā)。但是線程池啟動(dòng)多線程,是并發(fā)執(zhí)行的。線程線程同時(shí)對(duì)值為的變量進(jìn)行操作,結(jié)果返回,而不是。要不簡(jiǎn)單點(diǎn),記住多線程對(duì)全局變量的寫操作會(huì)發(fā)生沖突。 前言 面試Java,必然要被問Java內(nèi)存模型和Java并發(fā)開發(fā)...
給自己做個(gè)備忘,忘了可以看一下。Eclipse常用快捷鍵: 1、幾個(gè)最重要的快捷鍵代碼助手:Ctrl+Space(簡(jiǎn)體中文操作系統(tǒng)是Alt+/)快速修正:Ctrl+1單詞補(bǔ)全:Alt+/打開外部Java文檔:Shift+F2 顯示搜索對(duì)話框:Ctrl+H快速Outline:Ctrl+O打開資源:Ctrl+Shift...
摘要:本文首發(fā)于泊浮目的專欄在前文源碼剖析之二次開發(fā)可擴(kuò)展框架中,我們大概的了解了如何在中進(jìn)行二次開發(fā)。在還有相關(guān)的日志,有興趣的讀者可以自行搜索。掛斷點(diǎn)在掛斷點(diǎn)之前,請(qǐng)確定自己的開放了相應(yīng)的端口。之后記得使用關(guān)掉。 本文首發(fā)于泊浮目的專欄...
摘要:一虛擬機(jī)內(nèi)存圖解程序運(yùn)行與虛擬機(jī)之上,運(yùn)行時(shí)需要內(nèi)存空間。是一種數(shù)據(jù)結(jié)構(gòu),是虛擬機(jī)中的局部變量表,對(duì)應(yīng)物理層之上的程序數(shù)據(jù)模型。 一:虛擬機(jī)內(nèi)存圖解 JAVA 程序運(yùn)行與虛擬機(jī)之上,運(yùn)行時(shí)需要內(nèi)存空間。虛擬機(jī)執(zhí)行 JAVA 程序的過程中會(huì)把它管理...
摘要:簡(jiǎn)單快速了解是前端視圖填充數(shù)據(jù)的工具,是個(gè)頁(yè)面模板,可以像表達(dá)式那樣操作數(shù)據(jù),那樣公共代碼引用,很多好用的方法。目錄結(jié)構(gòu)快速接入深入了解待續(xù)。。。 簡(jiǎn)單快速了解 Beetl 是前端視圖填充數(shù)據(jù)的工具,是個(gè)頁(yè)面模板,可以像 el 表達(dá)式那樣操作數(shù)...
摘要:類的成員方法類的成員方法的定義中的使用之靜態(tài)變量我們可以基于一個(gè)類創(chuàng)建多個(gè)該類的對(duì)象,每個(gè)對(duì)象都擁有自己的成員,互相獨(dú)立。靜態(tài)初始化塊只在類加載時(shí)執(zhí)行,且只會(huì)執(zhí)行一次,同時(shí)靜態(tài)初始化塊只能給靜態(tài)變量賦值,不能初始化普通的成員變量。 ja...
摘要:前言一位同事在代碼中用了建造者模式,是的內(nèi)部類,為什么加。懵逼個(gè)人理解簡(jiǎn)單地說(shuō)這是一種餓漢式單例模式。在類加載的時(shí)候就創(chuàng)建。保證外部非靜態(tài)數(shù)據(jù)內(nèi)部類無(wú)法直接訪問。而是通過的和方法 前言 一位同事在代碼中用了建造者模式,builder是static f...
摘要:使用包管理中的類在開發(fā)過程中需要提供大量的類,那么這么多類會(huì)發(fā)生同名的情形呢答案是肯定的。那么如何處理這種重名問題呢管理文件解決同名文件沖突。 使用包(Package)管理Java中的類 在開發(fā)過程中需要提供大量的類,那么這么多類會(huì)發(fā)生同名的情形呢...
摘要:對(duì)于方法,用戶一般不會(huì)去調(diào)用,相當(dāng)于根據(jù)一定的規(guī)則將與對(duì)象相關(guān)的信息映射為一個(gè)數(shù)值,稱為散列值。一般在在覆蓋方法的同時(shí)也要覆蓋方法,否則將會(huì)違反的通用約定,從而導(dǎo)致該類無(wú)法與所有基于散列值的集合類結(jié)合在一起正常工作。 1. Java中如何比...
摘要:句子是一串由空格分隔的單詞。每個(gè)單詞僅由小寫字母組成。如果一個(gè)單詞在其中一個(gè)句子中只出現(xiàn)一次,在另一個(gè)句子中卻沒有出現(xiàn),那么這個(gè)單詞就是不常見的。返回所有不常用單詞的列表。 前言 LeetCode Weekly Contest 97的第一道題目,分值為3分。原題...
摘要:好用的類在中,新增了一個(gè)工具類,就是類。事實(shí)上,我們進(jìn)行比較的對(duì)象,除了引用對(duì)象之外,就是自動(dòng)裝箱后等類型了。我們?cè)谥貙憰r(shí),可以參考上面的類的寫法。 好用的java.util.Objects類 在jdk1.7中,新增了一個(gè)工具類,就是java.util.Objects類。它...
摘要:簡(jiǎn)介是命令的一個(gè)參數(shù)。參數(shù)可以用于指定一個(gè)包,并且對(duì)該包有個(gè)要求這個(gè)包的文件必須指定項(xiàng)。重點(diǎn)就在方法,也就是我們今天的標(biāo)題。和類加載器比較類加載器也可以實(shí)現(xiàn)運(yùn)行時(shí)修改代碼。使用能讓修改字節(jié)碼這個(gè)動(dòng)作化于無(wú)形,對(duì)業(yè)務(wù)透明,減少侵入性。 ...
摘要:一面技術(shù)面持續(xù)時(shí)間分鐘左右面試官看起來(lái)比較好,開場(chǎng)自我介紹,面試官了解一些基本情況。沒問技術(shù),差不多分鐘。給出優(yōu)化方案只查找給定用戶的好友的好友即可。之后就是讓回去等通知了涼了貌似每個(gè)人都是三面。 直接上干貨了 時(shí)間:2018-08-12地點(diǎn):...
摘要:通過工廠獲得對(duì)象。咱直接看,這個(gè)命名明顯告訴玩家,就在前面了。是個(gè)抽象方法,我們得去看實(shí)現(xiàn)??吹较肟吹臇|西了,之后將結(jié)果交給處理。執(zhí)行完操作之后,將結(jié)果交給。 用了挺久的mybatis,但一直停留在用的層面上,覺得不行的呀,得走出舒適區(qū)。所...
摘要:面向?qū)ο笾庋b繼承多態(tài)封裝將類中的信息進(jìn)行隱藏在類的內(nèi)部,不允許外部程序信息直接訪問,而是只能通過該類的提供的方法來(lái)實(shí)現(xiàn)對(duì)隱藏信息的提供和訪問。與之對(duì)應(yīng),包含內(nèi)部類的類被稱為外部類。 面向?qū)ο笾庋b、繼承、多態(tài) 封裝 將類中的信息進(jìn)行隱...
摘要:前言同步代碼塊是中最基礎(chǔ)的實(shí)現(xiàn)線程間的同步與通信的機(jī)制之一,本篇我們將對(duì)同步代碼塊以及監(jiān)視器鎖的概念進(jìn)行討論。離開同步代碼塊后,所獲得的鎖會(huì)被自動(dòng)釋放。 前言 同步代碼塊(Synchronized Block) 是java中最基礎(chǔ)的實(shí)現(xiàn)線程間的同步與通信的機(jī)制...
摘要:分層支持分層一種樹形結(jié)構(gòu),通過構(gòu)造函數(shù)可以指定當(dāng)前待構(gòu)造的對(duì)象的父結(jié)點(diǎn)。當(dāng)一個(gè)的參與者數(shù)量變成時(shí),如果有該有父結(jié)點(diǎn),就會(huì)將它從父結(jié)點(diǎn)中溢移除。當(dāng)首次將某個(gè)結(jié)點(diǎn)鏈接到樹中時(shí),會(huì)同時(shí)向該結(jié)點(diǎn)的父結(jié)點(diǎn)注冊(cè)一個(gè)參與者。 showImg("https://segme...
摘要:數(shù)據(jù)結(jié)構(gòu)重要成員變量代表整個(gè)哈希表??破?,解決多線程并行情況下使用鎖造成性能損耗的一種機(jī)制,操作包含三個(gè)操作數(shù)內(nèi)存位置預(yù)期原值和新值。 ConcurrenHashMap 。下面分享一下我對(duì)ConcurrentHashMap 的理解,主要用于個(gè)人備忘。如果有不對(duì),請(qǐng)批評(píng)...
摘要:由于之前的,都是線程不安全的,所以就十分受歡迎。微笑工具類部分如下完整版點(diǎn)次鏈接如果不夠用可以自己添加年月日時(shí)分秒年月日年月日時(shí)分后面的工具類代碼還有很多,比如獲取一個(gè)季度的最后一天,諸如此類,就不貼了。 由于Java8 之前的Date,Simple...
摘要:異步轉(zhuǎn)同步業(yè)務(wù)需求有些接口查詢反饋結(jié)果是異步返回的,無(wú)法立刻獲取查詢結(jié)果。正常處理邏輯觸發(fā)異步操作,然后傳遞一個(gè)唯一標(biāo)識(shí)。等到異步結(jié)果返回,根據(jù)傳入的唯一標(biāo)識(shí),匹配此次結(jié)果。異步轉(zhuǎn)同步查詢空循環(huán)短暫等待。 異步轉(zhuǎn)同步 業(yè)務(wù)需求 有些接口...
ChatGPT和Sora等AI大模型應(yīng)用,將AI大模型和算力需求的熱度不斷帶上新的臺(tái)階。哪里可以獲得...
一、活動(dòng)亮點(diǎn):全球31個(gè)節(jié)點(diǎn)覆蓋 + 線路升級(jí),跨境業(yè)務(wù)福音!爆款云主機(jī)0.5折起:香港、海外多節(jié)點(diǎn)...
大模型的訓(xùn)練用4090是不合適的,但推理(inference/serving)用4090不能說(shuō)合適,...