在Java文档中
File#getPath()
写道:
Converts this abstract pathname into a pathname string.
我尝试写1
File file3 = new File("D:\\work");
System.out.println(file3.getPath());
在cmd中我看到D:\\work
我试着写:
File file4= new File("file4");
System.out.println(file4.getPath());
在cmd中,我看到:
file4
因此,我有一个问题:
之间有什么区别
抽象路径名
和
路径名字符串
?
参考方案
抽象路径名是java.io.File
对象,路径名字符串是java.lang.String
对象。两者都引用磁盘上的相同文件。
我怎么知道?java.io.File
Javadoc的第一句话说明:
文件和目录路径名的抽象表示。
继续说明原因:
用户界面和操作系统使用取决于系统的
路径名字符串,用于命名文件和目录。这节课
呈现了抽象的,与系统无关的层次结构视图
路径名。
我的项目设定我有以下项目设置:\program.jar \images\logo.png 在我的代码中,我使用相对URL "images/logo.png"引用图像。问题如果我在目录中使用以下命令运行此程序:c:\projects\program_dir\bin\>java -jar program.jar 然后一切正常,Java能…
Java:BigInteger,如何通过OutputStream编写它 - java我想将BigInteger写入文件。做这个的最好方式是什么。当然,我想从输入流中读取(使用程序,而不是人工)。我必须使用ObjectOutputStream还是有更好的方法?目的是使用尽可能少的字节。谢谢马丁 参考方案 Java序列化(ObjectOutputStream / ObjectInputStream)是将对象序列化为八位字节序列的一种通用方法。但…
Java:线程池如何将线程映射到可运行对象 - java试图绕过Java并发问题,并且很难理解线程池,线程以及它们正在执行的可运行“任务”之间的关系。如果我创建一个有10个线程的线程池,那么我是否必须将相同的任务传递给池中的每个线程,或者池化的线程实际上只是与任务无关的“工人无人机”可用于执行任何任务?无论哪种方式,Executor / ExecutorService如何将正确的任务分配给正确的线程? 参考方案 …
JAVA:字节码和二进制有什么区别? - javajava字节代码(已编译的语言,也称为目标代码)与机器代码(当前计算机的本机代码)之间有什么区别?我读过一些书,他们将字节码称为二进制指令,但我不知道为什么。 参考方案 字节码是独立于平台的,在Windows中运行的编译器编译的字节码仍将在linux / unix / mac中运行。机器代码是特定于平台的,如果在Windows x86中编译,则它将仅在Win…
Java中的多线程 - java如果我的文件包含4000字节,我可以同时从文件读取4个线程吗?并且每个线程访问文件的不同部分。线程1读取0-999,线程2读取1000-2999,依此类推。请用Java举例。 参考方案 该文件非常小,并且加载速度非常快。我要做的是创建一个加载数据的线程安全数据类。然后,每个处理线程都可以从数据类中请求一个ID,并接收一个唯一的线程,并保证没有其他线程向您的远…