目前只学了javaSE基础,在学到Thread.cunrrentThread().getContextClassLoader().getResource().getPath();获取绝对路径的时候有疑问
自学课中讲的使用情景:
如果一个代码在IDEA中使用了以src之后的路径(相对路径)来获取文件
FileReader reader = new FileReader("某相对路径");
解释到 这样写的话如果更换了软件不使用IDEA,那么文件在读取的过程中就找不到这个文件
需要改写成
String puth = Thread.cunrrentThread().getContextClassLoader().getResource("某相对路径").getPath();
FileReader reader = new FileReader(puth);
问题
如果第一种情况下FileReader("某相对路径");以某相对路径读取文件在其他系统或软件不可行
那么在第二种情况下.getResource("某相对路径");这种方式在其他系统或软件也无法获得对应文件
编程爱好初学者,烦请拨云见日,
指出两种方式更深层次的差异和使用的必要性
以及相对路径不可行的使用情景