两者的共同点:  
一:都用于典型的操作,如复制、移动、重命名、创建、打开、删除和追加到文件   
二:默认情况下,将向所有用户授予对新文件的完全读/写访问权限。  
两者的区别:   
File类是静态类,由于所有的File方法都是静态的,所以如果只想执行一个操作,那么使用File方法的效率比使用相应的FileInfo 实例方法可能更高。所有的File方法都要求当前所操作的文件的路径。File 类的静态方法对所有方法都执行安全检查。如果打算多次重用某个对象,可考虑改用FileInfo的相应实例方法,因为并不总是需要安全检查。  
file,directory可以控制多个文件所以进行每次安全检查,而FileInfo,DirectoryInfo只能控制一个文件信息只进行一次安全处理。   
静态方法每次对文件进行操作过程是:静态方法存在于栈头,它是由类调用,然后寻找需要操作的文件。寻找需要操作文件的过程是个IO过程,耗时比较长。但它不必要到堆区去遍历实例化新对象。   
普通方法是由当时的对象调用,需要创建对象,new一个,(静态方法不需要此过程)但如果操作次数多的话,普通方法就不需要再次去执行不必要而且耗时的IO操作,就能整体提速!   
所以执行方法的次数也就能决定了使用哪个类的最佳选择。

转载于:https://www.cnblogs.com/WarBlog/p/5828350.html

File,FileInfo,Directory,DirectoryInfo相关推荐

  1. File,FileInfo;Directory,DirectoyInfo的区别

    曾经看过有文章说FileInfo.DirectoryInfo类主要用于文件.目录的属性,操作功能不强云云,似乎有忘文生义的嫌疑.     也说说自己的学习体会:     一.    File,Dire ...

  2. FileInfo和DirectoryInfo

    一.最直观的比较 file和fileinfo都提供对文件的操作      file类提供静态的方法,file类不能被继承,也不能产生实例,如果只需要使用一次或者次数很少,那么使用file类会比使用fi ...

  3. PHP-Redis扩展安装 error: ext/standard/php_smart_str.h: No such file or directory

    在源码编译PHP-redis扩展时,遇到缺少头文件问题 [问题描述] error: ext/standard/php_smart_str.h: No such file or directory [问 ...

  4. libgstreamer-1.0.so.0: cannot open shared object file: No such file or directory

    1. 问题现象 error while loading shared libraries: libgstreamer-1.0.so.0: cannot open shared object file: ...

  5. pip 升级之后提示 bash: /usr/bin/pip3: No such file or directory

    1. 问题现象 pip 升级之后使用时报错: $ pip3 -V bash: /usr/bin/pip3: No such file or directory 通过命令查找 pip 位置 $ whic ...

  6. pip install faiss-gpu失败unable to execute ‘swig‘: No such file or directory

    1. 安装报错 unable to execute 'swig': No such file or directory error: command 'swig' failed with exit s ...

  7. GCC 链接 xxx:No such file or directory 及运行可执行文件 error while loading shared libraries: xxx.so 解决方案

    关于 GCC 提示找不到指定库文件的这个问题,通常出现在以下 2 个场景中: 利用静态库或者动态库文件实现链接操作(生成可执行文件)时,·GCC 可能会提示 xxx:No such file or d ...

  8. npm install遇到ENOENT: no such file or directory, rename错误

    问题描述 npm 安装模块时遇到ENOENT: no such file or directory, rename错误 解决办法 1.删除根目录下package-lock.json文件 2.删除根目录 ...

  9. docker load 出错 open /var/lib/docker/tmp/docker-import-837327978/bin/json: no such file or directory

    1. 问题现象 使用 docker load 加载镜像包的时候出现如下错误: open /var/lib/docker/tmp/docker-import-837327978/bin/json: no ...

最新文章

  1. Centos6.5_x86_64 编译安装Subversion-1.8.5
  2. 【视频】React redux toolkit创建状态切片
  3. CGRectInset CGRectoffset UIEdgeInsetsInsetRect 这三个函数的使用情况
  4. Android Studio中解决jar包重复依赖导致的代码编译错误
  5. 2019 年,智能问答(Question Answering)的主要研究方向有哪些?
  6. OceanBase在蚂蚁金服的智能运维实践之路
  7. 中关村十大AI研究院 | 盘点
  8. 开源微信共享记账小程序
  9. 简析:世博会燃印刷业激情
  10. 更改Word文档中自带插入公式中的字体解决方案
  11. Linux 返回根目录
  12. ACM International Collegiate Programming Contest, Egyptian Collegiate Programming Contest (ECPC 2015
  13. Android基于安卓手机个人理财系统
  14. 12.面向对象(继承/super/接口/抽象类)
  15. 笔试练习题002...to be continued...
  16. Markdown的语法使用
  17. 【女黑客看《流浪地球2》是什么体验】
  18. 适用于Linux的5种开源赛车和飞行游戏
  19. kdb的基本用法 2
  20. 微信小程序 自定义tab不煽动

热门文章

  1. android调用系统相机图片不旋转,Android 处理调用系统相机生成的被旋转图片
  2. PHP聊天记录内啥,PHP的PSR系列轨范都有啥内容
  3. 图片添加对话气泡app_刘雨昕、谢可寅、虞书欣代言农夫山泉TOT气泡饮
  4. ConcurrentHashMap原理,jdk7和jdk8的区别
  5. docker运行随机分配端口
  6. 盘点八个程序员必备的代码编辑器
  7. [python进阶]12.继承的优缺点
  8. 解决关于登录校园网显示不在IP段的问题方案(要看注意事项哦!)
  9. 类从未使用_如果您从未依赖在线销售,如何优化您的网站
  10. iOS底层探索(二) - 写给小白看的Clang编译过程原理