課程
/后端開發
/Java
/Spring Boot熱部署
name = name.replace(".","http://");
2017-11-19
源自:Spring Boot熱部署 4-2
正在回答
別聽他們胡說,為了轉義是反斜杠“\\”,兩個反斜杠實際代表一個反斜杠“\”。
那為什么Java中寫正斜杠“/”、“//”、“///”,甚至再多都不會有問題呢?
那是因為Java中處理流,都會使用到File這個類,在Windows環境中,File會使用WinNTFileSystem這個工具類處理那些問題,再WinNTFileSystem類中,會把所有的正斜杠“/”都處理成反斜杠,再把多余的反斜杠“\”給去掉,最終會表示成轉義后的一個反斜杠。
可以測試一下:
public?static?void?main(String[]?args)?{ ????File?file?=?new?File("C:\\\\\\Users///pc//////////Desktop\\工作日志.txt"); ????System.out.println(file.getAbsolutePath()); }
輸出結果為:
C:\Users\pc\Desktop\工作日志.txt
getAbsolutePath()的源代碼為:
public?String?getAbsolutePath()?{ ????return?fs.resolve(this); }
而這個fs在Windows平臺下正是WinNTFileSystem這個類:
WinNTFileSystem則處理了這些事情。
嘔翔 提問者
java這個設計反人類
重寫的findClass好像沒被用到,而且我用MyEclispe按老師那樣敲的并不會熱加載類,把老師在工廠類里用到的loadClass改成findClass會報錯
沒有啊 ,感覺一個兩個三個都可以
兩個?"http://"?是為了轉譯,直接寫?"/"?編譯會報錯的。
舉報
Spring Boot熱部署的原理和實現
3 回答這個CLASS_PATH是什么路徑???找不到bin??!
5 回答說系統找不到這個指定路徑 怎么這個路徑會使這樣呢?CLASS_PATH
3 回答IDEA類加載路徑常量怎么設置
1 回答為什么監控.class文件而不是.java文件?
1 回答xml中沒有設置path,為什么訪問的時候要帶/hot,是這個xml文件名?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-11-20
別聽他們胡說,為了轉義是反斜杠“\\”,兩個反斜杠實際代表一個反斜杠“\”。
那為什么Java中寫正斜杠“/”、“//”、“///”,甚至再多都不會有問題呢?
那是因為Java中處理流,都會使用到File這個類,在Windows環境中,File會使用WinNTFileSystem
這個工具類處理那些問題,再WinNTFileSystem類中,會把所有的正斜杠“/”都處理成反斜杠,再把多余的反斜杠“\”給去掉,最終會表示成轉義后的一個反斜杠。
可以測試一下:
public?static?void?main(String[]?args)?{ ????File?file?=?new?File("C:\\\\\\Users///pc//////////Desktop\\工作日志.txt"); ????System.out.println(file.getAbsolutePath()); }輸出結果為:
getAbsolutePath()的源代碼為:
public?String?getAbsolutePath()?{ ????return?fs.resolve(this); }而這個fs在Windows平臺下正是WinNTFileSystem這個類:
WinNTFileSystem則處理了這些事情。
2020-11-10
java這個設計反人類
2018-03-20
重寫的findClass好像沒被用到,而且我用MyEclispe按老師那樣敲的并不會熱加載類,把老師在工廠類里用到的loadClass改成findClass會報錯
2017-11-20
沒有啊 ,感覺一個兩個三個都可以
2017-11-19